Go: ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅: sync: ΠΌΠ΅Ρ‚ΠΎΠ΄ Map.Delete Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅, Π±Ρ‹Π» Π»ΠΈ ΠΊΠ»ΡŽΡ‡ ΡƒΠ΄Π°Π»Π΅Π½ ΠΈΠ»ΠΈ Π½Π΅Ρ‚

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 25 янв. 2018  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: golang/go

Π― ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ Π²Π°ΠΌ Π²Ρ‹ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ‚ΠΈΠΏΠ° bool Π² ΠΊΠ°Ρ€Ρ‚Π΅ синхронизации, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² Π΅Π΅ с:

func (m * Map) Π£Π΄Π°Π»ΠΈΡ‚ΡŒ (ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ интСрфСйс {})

ΠΊ:

func (m * Map) Π£Π΄Π°Π»ΠΈΡ‚ΡŒ (ΠΊΠ»ΡŽΡ‡ интСрфСйса {}) bool

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ сообщаСт Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡƒ, Π±Ρ‹Π» Π»ΠΈ элСмСнт ΡƒΠ΄Π°Π»Π΅Π½ с ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈΠ»ΠΈ Π½Π΅Ρ‚ (истина, Ссли ΠΊΠ»ΡŽΡ‡ Π±Ρ‹Π» Π½Π° ΠΊΠ°Ρ€Ρ‚Π΅, лоТь, Ссли Π²Ρ‹Π·ΠΎΠ² Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»). ΠšΠ°ΠΆΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ Map.Delete Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Π½ΡƒΡ‚Ρ€ΠΈ сСбя Map.delete, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях.

Π­Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄.

FrozenDueToAge Proposal

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π­Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄.

Π”Π°, это Π±Ρ‹Π»ΠΎ Π±Ρ‹:

var deleteFn func(interface{}) = m.Delete

ВсС 3 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π­Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄.

Π”Π°, это Π±Ρ‹Π»ΠΎ Π±Ρ‹:

var deleteFn func(interface{}) = m.Delete

Π”Π°, ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ сигнатуры API. Π‘ΠΌ. Π’Π°ΠΊΠΆΠ΅: https://blog.merovius.de/2015/07/29/backwards-compatibility-in-go.html

ΠœΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ эту подпись.

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ

Π‘ΠΌΠ΅ΠΆΠ½Ρ‹Π΅ вопросы

natefinch picture natefinch  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

gopherbot picture gopherbot  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

rsc picture rsc  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

bradfitz picture bradfitz  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

OneOfOne picture OneOfOne  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ