Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Π½Π΅Ρ€Π°Π·Ρ€Ρ‹Π²Π½ΠΎ связана с ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ΠΌ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрного взаимодСйствия. МногиС Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ: Π΄Π°Π½Π½Ρ‹Π΅, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π² ΠΎΠ΄Π½ΠΎΠΌ контСкстС исполнСния, Π° бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ° часто resides Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ управляСмого прилоТСния ΠΈΠ»ΠΈ сСрвСра. ПониманиС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹ Π² ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, являСтся ΠΊΠ»ΡŽΡ‡ΠΎΠΌ ΠΊ созданию ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ быстрых ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ.

БущСствуСт нСсколько Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Ρ… ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΊ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡŽ этой Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ свои прСимущСства ΠΈ ограничСния. Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π³Π΄Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ выполняСтся ΠΊΠΎΠ΄: Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π½Π° сСрвСрС ΠΈΠ»ΠΈ Π² контСкстС ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…. Ошибки Π² ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ контСкста часто приводят ΠΊ Π½Π΅ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ Π²Ρ‹Π·ΠΎΠ²Π°ΠΌ сСрвСра, Ρ‡Ρ‚ΠΎ критичСски сниТаСт ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ систСмы.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. ΠœΡ‹ рассмотрим Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ ΠΈ особСнности сСриализации Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром.

АрхитСктурныС особСнности контСкстов выполнСния

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΊ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΎΡΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒ Π³Ρ€Π°Π½ΠΈΡ†Ρ‹ контСкстов выполнСния Π² 1Π‘. ΠœΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ выполняСтся Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° (толстый ΠΈΠ»ΠΈ Ρ‚ΠΎΠ½ΠΊΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚), Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Ρ‚Π°ΠΊ ΠΈ Π½Π° сСрвСрС, Π² зависимости ΠΎΡ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ компиляции. НСпониманиС этой Ρ€Π°Π·Π½ΠΈΡ†Ρ‹ Π²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкам Ρ‚ΠΈΠΏΠ° Β«Π’Ρ‹Π·ΠΎΠ² сСрвСра ΠΈΠ· ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°Β».

Когда Π²Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹, Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с ΠΊΠΎΠΏΠΈΠ΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠΉ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π§Ρ‚ΠΎΠ±Ρ‹ эти Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠΏΠ°Π»ΠΈ Π² ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, часто трСбуСтся явный Π²Ρ‹Π·ΠΎΠ² сСрвСрной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. Π’Π°ΠΆΠ½Ρ‹ΠΌ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠΌ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ прямого доступа ΠΊ элСмСнтам Ρ„ΠΎΡ€ΠΌΡ‹, Ссли ΠΎΠ½ΠΈ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ Π΅ΠΌΡƒ Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

Рассмотрим основныС Ρ‚ΠΈΠΏΡ‹ контСкстов:

  • πŸ–₯️ ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ контСкст: здСсь доступны элСмСнты управлСния Ρ„ΠΎΡ€ΠΌΡ‹, события интСрфСйса ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.
  • βš™οΈ Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ контСкст: здСсь выполняСтся основная бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ°, Ρ€Π°Π±ΠΎΡ‚Π° с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ транзакциями.
  • πŸ”„ Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ контСкст: ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΈ Ρ‚Π°ΠΌ, ΠΈ Ρ‚Π°ΠΌ, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ остороТности ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈΠ· клиСнтского ΠΊΠΎΠ΄Π° Π±Π΅Π· ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Π’Ρ‹Π·Π²Π°Ρ‚ΡŒΠ‘Π΅Ρ€Π²Π΅Ρ€ (ΠΈΠ»ΠΈ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ &НаБСрвСрС Π² старых вСрсиях) ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния.

πŸ“Š Π“Π΄Π΅ Ρ‡Π°Ρ‰Π΅ всСго Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π΄Π°Π½Π½Ρ‹Ρ…?
Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹
Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°
Π’ ΠΎΠ±Ρ‰Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅
Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅

ΠŸΡ€ΡΠΌΠΎΠΉ Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹

Π‘Π°ΠΌΡ‹ΠΉ распространСнный ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ способ взаимодСйствия β€” это Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° нСпосрСдствСнно ΠΈΠ· ΠΊΠΎΠ΄Π° Ρ„ΠΎΡ€ΠΌΡ‹. Π’ этом случаС Ρ„ΠΎΡ€ΠΌΠ° выступаСт ΠΊΠ°ΠΊ ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΎΡ€ дСйствия, Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ выполняСт Π»ΠΎΠ³ΠΈΠΊΡƒ. Для этого Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ объявлСн ΠΌΠ΅Ρ‚ΠΎΠ΄ с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ компиляции.

Если ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ ΠΊΠ°ΠΊ &ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, ΠΎΠ±Ρ€Π°Ρ‰Π°ΡΡΡŒ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠΊΠ°ΠΊ ΠΊ глобальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ (Ссли Ρ„ΠΎΡ€ΠΌΠ° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°) ΠΈΠ»ΠΈ Ρ‡Π΅Ρ€Π΅Π· ссылку Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Однако, Ссли ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Π½Π° сСрвСрС, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ ΠΊΠ°ΠΊ &НаБСрвСрС.

ΠŸΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ сСрвСрного ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· список ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° автоматичСски сСриализуСт ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ значСния. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ простыС Ρ‚ΠΈΠΏΡ‹, структуры, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ Π΄Π°ΠΆΠ΅ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

&НаБСрвСрС

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒΠ”Π°Π½Π½Ρ‹Π΅ΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅(ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€1, ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€2)

// Π›ΠΎΠ³ΠΈΠΊΠ° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

ΠšΠΎΠ½Π΅Ρ†ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

&ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠšΠ½ΠΎΠΏΠΊΠ°Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ(Команда)

ΠžΠ±ΡŠΠ΅ΠΊΡ‚.ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒΠ”Π°Π½Π½Ρ‹Π΅ΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅(Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π€ΠΎΡ€ΠΌΡ‹1, Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π€ΠΎΡ€ΠΌΡ‹2);

ΠšΠΎΠ½Π΅Ρ†ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

ИзмСнСния, внСсСнныС Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π²Π½ΡƒΡ‚Ρ€ΠΈ сСрвСрной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, Π½Π΅ вСрнутся автоматичСски Π² Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹, Ссли Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΡ‹ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° Π΄Π°Π½Π½Ρ‹Ρ….

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ структуры для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ссли ΠΈΡ… количСство ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ Ρ‚Ρ€ΠΈ. Π­Ρ‚ΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° ΠΈ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

ИспользованиС Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² Ρ„ΠΎΡ€ΠΌΡ‹ для синхронизации

Атрибуты Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΌΠΎΡ‰Π½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ для хранСния ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Они ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ связаны с полями Π²Π²ΠΎΠ΄Π° ΠΈΠ»ΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ скрыто Π² памяти. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ организация Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² позволяСт эффСктивно ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ состояниС Ρ„ΠΎΡ€ΠΌΡ‹ Π² ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ с Ρ‚ΠΈΠΏΠΎΠΌ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Ρ‚ΠΈΠΏΡƒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. НапримСр, Ссли ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, создайтС Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ с Ρ‚Π°ΠΊΠΈΠΌ ΠΆΠ΅ Ρ‚ΠΈΠΏΠΎΠΌ. Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этого Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΅Π³ΠΎ ссылки Π½Π° сСрвСр позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π»ΠΈΡˆΠ½ΠΈΡ… ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΉ Π΄Π°Π½Π½Ρ‹Ρ….

Однако, стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ограничСния Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов Π΄Π°Π½Π½Ρ‹Ρ…. Если Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ содСрТит ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ строк, Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Ρ‡Π΅Ρ€Π΅Π· Π³Ρ€Π°Π½ΠΈΡ†Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΈΠ»ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹.

Π’ΠΈΠΏ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΠΎΠ΅ использованиС
ΠŸΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ МгновСнная ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π€Π»Π°Π³ΠΈ, числа, ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠ΅ строки
Бсылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠŸΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ UUID Π’Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°
Π’Π°Π±Π»ΠΈΡ†Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ БСриализация всСго массива Бписки Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ², дСтализация
Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π“Π»ΡƒΠ±ΠΎΠΊΠΎΠ΅ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠšΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ настройки

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° контСкста ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ„ΠΎΡ€ΠΌΡ‹

Иногда Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ситуация, ΠΊΠΎΠ³Π΄Π° ΠΌΠΎΠ΄ΡƒΠ»ΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° трСбуСтся доступ Π½Π΅ просто ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°, Π° ΠΊ самому ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ Π΅Π³ΠΎ контСксту. Π­Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈ использовании ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, Π½ΠΎ здСсь Π΅ΡΡ‚ΡŒ строгиС ограничСния.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ссылку Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ Π² сСрвСрный ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово Π­Ρ‚ΠΎΡ‚ΠžΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈΠ»ΠΈ пСрСдавая сам ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΉ ΠΊΠ°ΠΊ Π€ΠΎΡ€ΠΌΠ°. Однако, Π½Π° сСрвСрС доступ ΠΊ элСмСнтам управлСния Ρ‚Π°ΠΊΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½. Π’Ρ‹ смоТСтС Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹, Π½ΠΎ Π½Π΅ смоТСтС ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π΅ΠΉ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ.

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΠΎΠ±Ρ‰ΠΈΡ… модулях с ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹ΠΌ использованиСм, Π³Π΄Π΅ ΠΎΠ΄Π½Π° ΠΈ Ρ‚Π° ΠΆΠ΅ Π»ΠΎΠ³ΠΈΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΊ Ρ€Π°Π·Π½Ρ‹ΠΌ Ρ„ΠΎΡ€ΠΌΠ°ΠΌ. Π’ этом случаС ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΠ°ΠΊ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Π΅Π³ΠΎ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ интСрфСйс.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Никогда Π½Π΅ ΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ ссылку Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ Π² Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π² свойствах ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΡƒΡ‚Π΅Ρ‡ΠΊΠ°ΠΌ памяти ΠΈ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΡ‹ Π²Π°ΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠ°Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…. Π›ΡŽΠ±ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ· сСрвСрного ΠΊΠΎΠ΄Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ осознанным, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это сразу отразится Π½Π° интСрфСйсС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ послС Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° управлСния ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ„ΠΎΡ€ΠΌΡ‹

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° сСрвСр создаСтся Π΅Π³ΠΎ прокси-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. ΠŸΡ€ΡΠΌΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ свойств интСрфСйса (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π¦Π²Π΅Ρ‚ ΠΈΠ»ΠΈ Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ) с сСрвСра Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±Π΅Π· использования ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² оповСщСния ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ интСрфСйса.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°ΠΌΠΈ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° ΠΈΠ»ΠΈ справочника Π² ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠΌΠ΅Π΅Ρ‚ свою спСцифику. Вабличная Ρ‡Π°ΡΡ‚ΡŒ β€” это коллСкция строк, ΠΈ часто трСбуСтся ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π½Π΅ всю Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ, Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ строку ΠΈΠ»ΠΈ ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ….

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части Ρ„ΠΎΡ€ΠΌΡ‹ Π² ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ссылку Π½Π° эту строку ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΅Ρ‘ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ссылки Π½Π° строки Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… частСй, позволяя Π½Π° сСрвСрС Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΡ… Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρ‹.

Однако, Ссли Π»ΠΎΠ³ΠΈΠΊΠ° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ всСй Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части, эффСктивнСС ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ссылку Π½Π° саму ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ строк ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅ΠΌ с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части Ρ‡Π΅Ρ€Π΅Π· Ρ‚ΠΎΡ‡ΠΊΡƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Π’ΠΎΠ²Π°Ρ€Ρ‹.

  • πŸ“¦ Для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΎΠ΄Π½ΠΎΠΉ строки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Ρ‚ΠΈΠΏΠ° БправочникБсылка.НомСнклатура ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ строки Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.
  • πŸ“‹ Для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ списка ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π’Π°Π±Π»ΠΈΡ†Π°Π—Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, скопировав Ρ‚ΡƒΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Ссли прямая ссылка Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π°.
  • πŸ”— ΠŸΡ€ΡΠΌΠ°Ρ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ строк Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° являСтся ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Ρ‡Ρ‚ΠΎ ΠΈ Ρ„ΠΎΡ€ΠΌΠ°.

Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ модификация Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² строки Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠΉ части Π½Π° сСрвСрС автоматичСски ΠΏΠΎΠΌΠ΅Ρ‡Π°Π΅Ρ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π° записи. Π­Ρ‚ΠΎ Π²Π°ΠΆΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ контроля цСлостности Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π½Π΅ стоит Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ.

πŸ’‘

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ частями всСгда провСряйтС, Π½Π΅ пуст Π»ΠΈ список ΠΏΠ΅Ρ€Π΅Π΄ цикличСской ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π»ΠΈΡˆΠ½ΠΈΡ… Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² сСрвСра.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ способы ΠΈΡ… устранСния

Π’ процСссС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ частой ошибкой являСтся Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Π½ΠΈΡ† контСкстов. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ часто ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ сСрвСрному свойству ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈΠ· клиСнтского ΠΊΠΎΠ΄Π° Π±Π΅Π· явного Π²Ρ‹Π·ΠΎΠ²Π° сСрвСрной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹. Π­Ρ‚ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ выполнСния, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π»Π΅Π³ΠΊΠΎ ΠΎΡ‚ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ ΠΏΠΎ ΠΆΡƒΡ€Π½Π°Π»Ρƒ рСгистрации.

Другая распространСнная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ слоТныС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°Ρ‚ сСриализации. НапримСр, нСльзя Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π½Π° сСрвСр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ COM-соСдинСния ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы. Π’Π°ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΈΠ»ΠΈ структуры.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ‚Π°Π±Π»ΠΈΡ† Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π·Π°ΠΏΠΎΠ»Π½ΠΈΠ» Ρ„ΠΎΡ€ΠΌΡƒ тысячами строк, Π° Π²Ρ‹ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ячСйки Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ с ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ всСй Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, систСма «повиснСт». Π’ Ρ‚Π°ΠΊΠΈΡ… случаях Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒΡΡ. ВсСгда ΡΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ΡΡŒ с синтаксис-ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΠΊΠΎΠΌ вашСй вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ контСкста ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π² Ρ€Π΅Π»ΠΈΠ·Π°Ρ… 8.3 ΠΈ 8.4.

Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Ρ‚Π°ΠΊΠΈΡ… ситуаций ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΆΠΈΠΌ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ с Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ запуском ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ сСрвСра. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π²Π°ΠΌ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ‚ΠΎΡ‡Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° управлСния ΠΈ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· ΡΠ΅Ρ‚ΡŒ.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы (FAQ)

МоТно Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π° Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ· модуля ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ?

НСт, ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ прямого доступа ΠΊ элСмСнтам Ρ„ΠΎΡ€ΠΌΡ‹. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли ΠΏΠ΅Ρ€Π΅Π΄Π°Π»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π² ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ, ΠΈ Ρ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ свойствам этого ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Как ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹ Π² ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ?

Для этого Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ ΡΠΊΡΠΏΠΎΡ€Ρ‚Π½ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΎΠ±Ρ‰Π΅Π³ΠΎ модуля ΠΈΠ· Ρ„ΠΎΡ€ΠΌΡ‹. Если ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° находится Π½Π° сСрвСрС (&НаБСрвСрС), ΠΏΠ΅Ρ€Π΅Π΄Π°ΠΉΡ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. ΠžΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹ автоматичСски.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли Π½ΡƒΠΆΠ½ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ· модуля ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Ρ„ΠΎΡ€ΠΌΡƒ?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Ссли Π²Ρ‹Π·ΠΎΠ² синхронный) ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°ΠΉΡ‚Π΅ структуру/Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ ссылкС (ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π’Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ»ΠΈ ИзмСнСниС). Для асинхронных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΎΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠΉ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка "Π’Ρ‹Π·ΠΎΠ² сСрвСра ΠΈΠ· ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°"?

Π­Ρ‚Π° ошибка Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ΄, ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹ΠΉ ΠΊΠ°ΠΊ клиСнтский (ΠΈΠ»ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹), пытаСтся ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρƒ ΠΈΠ»ΠΈ свойству, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ сущСствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° сСрвСрС. Π Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ &НаБСрвСрС ΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Ρ‡Π΅Ρ€Π΅Π· Π’Ρ‹Π·Π²Π°Ρ‚ΡŒΠ‘Π΅Ρ€Π²Π΅Ρ€ ΠΈΠ»ΠΈ ΠΈΠ· клиСнтского ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° события.