Подписка Π½Π° события Π² 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π³ΠΈΠ±ΠΊΠΎ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° дСйствия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, измСнСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ систСмныС события. Однако ΠΌΠ½ΠΎΠ³ΠΈΠ΅ программисты ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²: ΠΏΠΎΡ‡Π΅ΠΌΡƒ-Ρ‚ΠΎ событиС срабатываСт Ρ€Π°Π½ΡŒΡˆΠ΅ ΠΈΠ»ΠΈ ΠΏΠΎΠ·ΠΆΠ΅ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, Π»ΠΈΠ±ΠΎ Π½Π΅ вызываСтся вовсС. Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, Π² ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполняСтся подписанный ΠΊΠΎΠ΄, ΠΊΠ°ΠΊ Π²Π»ΠΈΡΡŽΡ‚ Π½Π° это контСкст выполнСния (ΠΊΠ»ΠΈΠ΅Π½Ρ‚/сСрвСр), Ρ‚ΠΈΠΏ события ΠΈ порядок ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

ΠœΡ‹ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ всС этапы ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° событий β€” ΠΎΡ‚ стандартных Ρ„ΠΎΡ€ΠΌ Π΄ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², рассмотрим особСнности Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΈ Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠ”Π΅ΠΉΡΡ‚Π²ΠΈΠ΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ приводят ΠΊ "Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌ" Π±Π°Π³Π°ΠΌ. ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡƒΠ΄Π΅Π»ΠΈΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ клиСнтскими ΠΈ сСрвСрными событиями Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это частая ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π»ΠΎΠ³ΠΈΠΊΠΈ.

1. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ событий Π² 1Π‘ ΠΈ ΠΈΡ… классификация

Π’ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8 всС события ΠΌΠΎΠΆΠ½ΠΎ условно Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Ρ‚Ρ€ΠΈ большиС Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠΎ источнику ΠΈΡ… возникновСния. ПониманиС этой классификации ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ для ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ подписки ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ:

  • πŸ“ ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ события β€” ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΡŽΡ‚ΡΡ дСйствиями ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² интСрфСйсС (Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ поля, Π²Ρ‹Π±ΠΎΡ€ элСмСнта списка). ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ, ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ, ΠŸΡ€ΠΈΠΠΊΡ‚ΠΈΠ²ΠΈΠ·Π°Ρ†ΠΈΠΈΠ‘Ρ‚Ρ€ΠΎΠΊΠΈ.
  • πŸ”„ БистСмныС события β€” Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ состояния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹, запись Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, Π½Π°Ρ‡Π°Π»ΠΎ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ). ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: ΠŸΡ€ΠΈΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠΈΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅, ΠŸΠ΅Ρ€Π΅Π΄Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ, ΠŸΡ€ΠΈΠ—Π°ΠΏΠΈΡΠΈ.
  • ⚑ ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ события β€” ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· ΠžΠΏΠΎΠ²Π΅ΡΡ‚ΠΈΡ‚ΡŒ() ΠΈΠ»ΠΈ Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ() для ΠΌΠ΅ΠΆΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ взаимодСйствия. Часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Π° "ΠΠ°Π±Π»ΡŽΠ΄Π°Ρ‚Π΅Π»ΡŒ".

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ событиС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠŸΡ€ΠΈΠ—Π°ΠΏΠΈΡΠΈ) ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ Ρ€Π°Π·Π½Ρ‹ΠΌ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌ Π² зависимости ΠΎΡ‚ контСкста. Π’Π°ΠΊ, для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° это систСмноС событиС, Π° для Ρ„ΠΎΡ€ΠΌΡ‹ β€” ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ΅. Π­Ρ‚Π° Π΄Π²ΠΎΠΉΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ часто становится источником ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹.

πŸ“Š Какой Ρ‚ΠΈΠΏ событий Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅ всСго?
ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ (интСрфСйс)
БистСмныС (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…)
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ (ΠžΠΏΠΎΠ²Π΅ΡΡ‚ΠΈΡ‚ΡŒ)
НС знаю, Π² Ρ‡Ρ‘ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π°

2. Π–ΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» события: ΠΎΡ‚ возникновСния Π΄ΠΎ выполнСния ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°

ΠŸΡ€ΠΎΡ†Π΅ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ события Π² 1Π‘ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Π½Π° 5 ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… этапов. Рассмотрим ΠΈΡ… Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Π² управляСмой Ρ„ΠΎΡ€ΠΌΠ΅:

  1. Π˜Π½ΠΈΡ†ΠΈΠ°Ρ†ΠΈΡ β€” ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ˜Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° фиксируСт дСйствиС ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ событиС ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹.
  2. Поиск ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² β€” систСма ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ провСряСт:
    • ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Ρ‘Π½Π½Ρ‹Π΅ Ρ‡Π΅Ρ€Π΅Π· Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ() Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹
    • ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ с ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹_Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ˜Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ() Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹
    • ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π² модулях ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (Ссли событиС транслируСтся Ρ‚ΡƒΠ΄Π°)
  • Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ контСкста β€” ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ события (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Команда, Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°).
  • Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ β€” ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π² порядкС ΠΈΡ… ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π° (ΠΎΠ± этом ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅).
  • Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ β€” Ссли Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΠ» ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ (Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° = Π›ΠΎΠΆΡŒ), выполняСтся дСйствиС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.
  • ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹ΠΉ нюанс: Π² ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ… (Π½Π΅ управляСмых) событиС ΠŸΡ€ΠΈΠΠ°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ срабатываСт Π΄ΠΎ выполнСния стандартной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π° Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ β€” вмСсто Π½Π΅Ρ‘. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ Ρ€Π°Π·Π½ΠΈΡ†Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ часто ΡƒΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ΠΏΡ€ΠΈ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π°.

    Π§Ρ‚ΠΎ происходит ΠΏΡ€ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅?

    Если Π² процСссС выполнСния ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π΅Ρ‚ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ выполнСния. ΠŸΡ€ΠΈ этом:

    - Π’ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ… событиС считаСтся "Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΌ", ΠΈ стандартноС дСйствиС Π½Π΅ выполняСтся.

    - Π’ управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ Ρ„ΠΎΡ€ΠΌΡ‹, Ссли Π½Π΅ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‡Π΅Π½ΠΎ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°...Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅.

    - Для сСрвСрных событий (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² транзакциях) Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΡ‚ΠΊΠ°Ρ‚ всСх ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

    3. ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Ρ‹ выполнСния ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²: ΠΊΡ‚ΠΎ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ?

    Когда Π½Π° ΠΎΠ΄Π½ΠΎ событиС подписано нСсколько ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΈΡ… Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ follows строгой очСрСдности. ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Ρ‹ зависят ΠΎΡ‚ способа подписки ΠΈ контСкста (ΠΊΠ»ΠΈΠ΅Π½Ρ‚/сСрвСр). НиТС прСдставлСна Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠ² для управляСмых Ρ„ΠΎΡ€ΠΌ:

    Бпособ подписки ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ
    ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° с ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹_Π˜ΠΌΡΠšΠΎΠΌΠ°Π½Π΄Ρ‹() ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ 1 (Π²Ρ‹ΡΡˆΠΈΠΉ) ВыполняСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ, Π΄Π°ΠΆΠ΅ Ссли Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠΎΠ·ΠΆΠ΅
    Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ() с Ρ„Π»Π°Π³ΠΎΠΌ Π’ΡΡ‚Π°Π²ΠΈΡ‚ΡŒΠ’ΠΠ°Ρ‡Π°Π»ΠΎ = Π˜ΡΡ‚ΠΈΠ½Π° Π›ΡŽΠ±ΠΎΠΉ 2 ДобавляСтся Π² Π½Π°Ρ‡Π°Π»ΠΎ списка ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²
    Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ() Π±Π΅Π· Ρ„Π»Π°Π³Π° Π›ΡŽΠ±ΠΎΠΉ 3 ДобавляСтся Π² ΠΊΠΎΠ½Π΅Ρ† списка
    ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°) Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ 4 Π’Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ послС всСх Ρ„ΠΎΡ€ΠΌΠ½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²
    Бтандартная ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π›ΡŽΠ±ΠΎΠΉ 5 (низший) ВыполняСтся, Ссли Π½Π΅ ΠΎΡ‚ΠΌΠ΅Π½Π΅Π½Π° (Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° = Π˜ΡΡ‚ΠΈΠ½Π°)

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

    ⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Если Π² клиСнтском ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° = Π›ΠΎΠΆΡŒ, сСрвСрныС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ всё Ρ€Π°Π²Π½ΠΎ выполнятся, Π½ΠΎ стандартноС дСйствиС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, запись Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°) Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Π½Π΅Π½ΠΎ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π½Π΅ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ Π±Π°Π³Π°ΠΌ, ΠΊΠΎΠ³Π΄Π° Π»ΠΎΠ³ΠΈΠΊΠ° Π½Π° сСрвСрС выполняСтся, Π° Π²ΠΈΠ΄ΠΈΠΌΠΎΠ³ΠΎ эффСкта Π½Π΅Ρ‚.

    4. ΠšΠ»ΠΈΠ΅Π½Ρ‚ vs Π‘Π΅Ρ€Π²Π΅Ρ€: Π³Π΄Π΅ ΠΈ ΠΊΠΎΠ³Π΄Π° выполняСтся ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ?

    Один ΠΈΠ· самых слоТных аспСктов β€” ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π² ΠΊΠ°ΠΊΠΎΠΌ контСкстС Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ. Π­Ρ‚ΠΎ зависит ΠΎΡ‚:

    • πŸ“ ΠœΠ΅ΡΡ‚Π° подписки β€” Π² клиСнтском ΠΈΠ»ΠΈ сСрвСрном ΠΌΠΎΠ΄ΡƒΠ»Π΅
    • πŸ”§ Π’ΠΈΠΏΠ° события β€” Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ события ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ клиСнтскими ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сСрвСрными
    • πŸ–₯️ Π Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ β€” толстый ΠΊΠ»ΠΈΠ΅Π½Ρ‚, Ρ‚ΠΎΠ½ΠΊΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚

    Рассмотрим ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ различия Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…:

    Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ выполнСния ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ
    ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ (ΠΏΠΎΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹) ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ ВсСгда выполняСтся Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π΄Π°ΠΆΠ΅ Ссли ΠΏΠΎΠ»Π΅ привязано ΠΊ сСрвСрным Π΄Π°Π½Π½Ρ‹ΠΌ
    ΠŸΡ€ΠΈΠ—Π°ΠΏΠΈΡΠΈ (Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚) Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ ВыполняСтся Π² Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ записи, ΠΈΠΌΠ΅Π΅Ρ‚ доступ ΠΊ сСрвСрным Π΄Π°Π½Π½Ρ‹ΠΌ
    ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ (ΠΊΠ½ΠΎΠΏΠΊΠ°) ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ + Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠœΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΡƒΡŽ, ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ части (Ссли ΠΊΠΎΠΌΠ°Π½Π΄Π° сСрвСрная)
    ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ (Ρ„ΠΎΡ€ΠΌΠ°) ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ ВыполняСтся Π΄ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° сСрвСр, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ запись

    Випичная ошибка β€” ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с сСрвСрными Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² клиСнтском ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ. НапримСр, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ:

    ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΠΎΠ»Π΅Π’ΠΎΠ²Π°Ρ€ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚)
    

    // ❌ ΠžΠ¨Π˜Π‘ΠšΠ: ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ сСрвСрным Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠ· ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°

    Π’ΠΎΠ²Π°Ρ€ = Π‘ΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠΈ.НомСнклатура.ΠΠ°ΠΉΡ‚ΠΈΠŸΠΎΠΠ°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡŽ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅);

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

    Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ Π½ΡƒΠΆΠ½ΠΎ:

    1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅ для Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…
    2. Или явно Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ сСрвСрныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ‡Π΅Ρ€Π΅Π· НаБСрвСрС ΠΈΠ»ΠΈ Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅()
    Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ(?("Π­Ρ‚ΠΎ сСрвСр! " + Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚(), "Π­Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚! " + Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚()));

    Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»Π°Π΄ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.-->

    5. Когда событиС НЕ срабатываСт: Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹

    Если подписанный ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ вызываСтся, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ кроСтся Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½:

    • πŸ”Œ НСвСрный контСкст подписки β€” ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² клиСнтском ΠΌΠΎΠ΄ΡƒΠ»Π΅, Π° событиС сСрвСрноС (ΠΈΠ»ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚). НапримСр, подписка Π½Π° ΠŸΡ€ΠΈΠ—Π°ΠΏΠΈΡΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π΅ сработаСт, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это событиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π° Π½Π΅ Ρ„ΠΎΡ€ΠΌΡ‹.
    • πŸ“› Ошибка Π² ΠΈΠΌΠ΅Π½ΠΈ события β€” ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠ° Π² ΠΈΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ вмСсто ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ) ΠΈΠ»ΠΈ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ (ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹_Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ вмСсто ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹_Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ˜Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ).
    • πŸ”„ ДинамичСскоС ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° β€” Π³Π΄Π΅-Ρ‚ΠΎ Π² ΠΊΠΎΠ΄Π΅ вызываСтся Π£Π΄Π°Π»ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ() ΠΈΠ»ΠΈ очищаСтся коллСкция ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² (ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ()).
    • 🚫 ΠžΡ‚ΠΌΠ΅Π½Π° стандартной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ β€” Ссли Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ установлСно Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° = Π›ΠΎΠΆΡŒ, ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΡΡ.
    • πŸ”’ ΠŸΡ€Π°Π²Π° доступа β€” Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π΅Ρ‚ ΠΏΡ€Π°Π² Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ сСрвСрного ΠΊΠΎΠ΄Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€ΠΎΠ»ΡŒ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎ "Π˜Π½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²").

    Для диагностики рСкомСндуСтся:

    1. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ фактичСскоС Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· ΠΠ°ΠΉΡ‚ΠΈΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ():
    2. Если ΠΠ°ΠΉΡ‚ΠΈΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ(Π­Ρ‚ΠΎΠžΠ±ΡŠΠ΅ΠΊΡ‚, "ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹_Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ˜Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ") = НСопрСдСлСно Π’ΠΎΠ³Π΄Π°
      

      Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½!");

      ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

    3. Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ Π² ΠžΠ±Ρ‰ΠΈΠΉΠœΠΎΠ΄ΡƒΠ»ΡŒ.ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠΉ (Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ).
    4. ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΆΡƒΡ€Π½Π°Π» рСгистрации (АдминистрированиС β†’ Π–ΡƒΡ€Π½Π°Π» рСгистрации) Π½Π° ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ ошибок выполнСния.
    ⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Ρ‡Π΅Ρ€Π΅Π· Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ() Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ ΠŸΡ€ΠΈΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠΈΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅, Π½Π΅ сохранятся послС закрытия Ρ„ΠΎΡ€ΠΌΡ‹. Для постоянной подписки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ.

    ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠΌΠ΅Π½ΠΈ события|Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ контСкстС (ΠΊΠ»ΠΈΠ΅Π½Ρ‚/сСрвСр)|ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΆΡƒΡ€Π½Π°Π» рСгистрации Π½Π° ошибки|ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΡ€Π°Π²Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°|Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ стандартная ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π΅ ΠΎΡ‚ΠΌΠ΅Π½Π΅Π½Π° Ρ€Π°Π½Π΅Π΅-->

    6. ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ подписки Π² Ρ€Π°Π·Π½Ρ‹Ρ… вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹

    ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ событий ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ вмСстС с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅. Рассмотрим ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ различия ΠΌΠ΅ΠΆΠ΄Ρƒ вСрсиями:

    ВСрсия ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ИзмСнСния Π² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ΅ событий ΠŸΡ€ΠΈΠΌΠ΅Ρ€
    8.0β€”8.1 Волько ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹, события привязаны ΠΊ элСмСнтам управлСния Кнопка.ΠŸΡ€ΠΈΠΠ°ΠΆΠ°Ρ‚ΠΈΠΈ
    8.2 ПоявлСниС управляСмых Ρ„ΠΎΡ€ΠΌ, события ΠΊΠΎΠΌΠ°Π½Π΄ (ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹) ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠšΠΎΠΌΠ°Π½Π΄Ρ‹_Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ(Команда, Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°)
    8.3.6+ Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° асинхронных ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ() с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ Асинхронно = Π˜ΡΡ‚ΠΈΠ½Π° Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ(Π­Ρ‚ΠΎΠžΠ±ΡŠΠ΅ΠΊΡ‚, "АсинхронноСБобытиС", "ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒΠΡΠΈΠ½Ρ…Ρ€ΠΎΠ½Π½ΠΎ", , , Π˜ΡΡ‚ΠΈΠ½Π°);
    8.3.18+ ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с событиями Π² Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΎ количСство сСтСвых запросов Бобытия Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ

    Для вСрсий 8.3.10 ΠΈ Π²Ρ‹ΡˆΠ΅ появилась Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ динамичСскиС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ дублирования:

    Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ(
    

    Π­Ρ‚ΠΎΠžΠ±ΡŠΠ΅ΠΊΡ‚,

    "ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ",

    "ΠœΠΎΠΉΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ",

    ,

    ,

    ,

    Новый Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€("12345-67890")

    );

    Π’ послСдних вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ (8.3.20+) Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° с событиями Π² мобильном ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π³Π΄Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΈΠ·-Π·Π° особСнностСй сСтСвого взаимодСйствия.

    ⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ вСрсиях Π½ΠΈΠΆΠ΅ 8.3.10 асинхронныС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ (Асинхронно = Π˜ΡΡ‚ΠΈΠ½Π°) Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ Π² Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅. РСкомСндуСтся Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ Π½Π° Ρ†Π΅Π»Π΅Π²ΠΎΠΉ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

    7. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: ΠΊΠΎΠ³Π΄Π° ΠΈ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒΡΡ

    Рассмотрим нСсколько Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ способы подписки Π½Π° события для Π½ΠΈΡ….

    Π—Π°Π΄Π°Ρ‡Π° 1: Валидация Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄ записью Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

    • βœ… РСшСниС: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ событиС ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°). Оно срабатываСт Π½Π° сСрвСрС ΠΈ позволяСт ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ запись:
    • ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΠ΅Ρ€Π΅Π΄Π—Π°ΠΏΠΈΡΡŒΡŽ(ΠžΡ‚ΠΊΠ°Π·, Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°)
      

      Если НЕ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ(ΠžΠ±ΡŠΠ΅ΠΊΡ‚.ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚) Π’ΠΎΠ³Π΄Π°

      ΠžΡ‚ΠΊΠ°Π· = Π˜ΡΡ‚ΠΈΠ½Π°;

      Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("НС ΡƒΠΊΠ°Π·Π°Π½ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚!");

      ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

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

    • ❌ Ошибка: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ΅ β€” это клиСнтскоС событиС, ΠΈ валидация ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΠΎΠΉΠ΄Π΅Π½Π° ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ записи.

    Π—Π°Π΄Π°Ρ‡Π° 2: РСакция Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ поля Π² Ρ„ΠΎΡ€ΠΌΠ΅ с сСрвСрной Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ.

    • βœ… РСшСниС: ΠŸΠΎΠ΄ΠΏΠΈΡΠ°Ρ‚ΡŒΡΡ Π½Π° ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π² клиСнтском ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΈ явно Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ сСрвСрный ΠΌΠ΅Ρ‚ΠΎΠ΄:
    • ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΠΎΠ»Π΅Π‘ΡƒΠΌΠΌΠ°ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚)
      

      НаБСрвСрС.ΠŸΠ΅Ρ€Π΅ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΠΠ”Π‘(Π­Π»Π΅ΠΌΠ΅Π½Ρ‚.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅);

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

      &НаБСрвСрС

      ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΠ΅Ρ€Π΅ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΠΠ”Π‘(Π‘ΡƒΠΌΠΌΠ°)

      // БСрвСрная Π»ΠΎΠ³ΠΈΠΊΠ° расчёта НДБ

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

    Π—Π°Π΄Π°Ρ‡Π° 3: ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ открытия Ρ„ΠΎΡ€ΠΌΡ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

    • βœ… РСшСниС: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ событиС ΠŸΡ€ΠΈΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹. Оно срабатываСт послС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ Π΄ΠΎ отобраТСния Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ:
    • ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠŸΡ€ΠΈΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ(ΠžΡ‚ΠΊΠ°Π·)
      

      Если ΠžΠ±ΡŠΠ΅ΠΊΡ‚.ΠŸΠΎΠΌΠ΅Ρ‚ΠΊΠ°Π£Π΄Π°Π»Π΅Π½ΠΈΡ Π’ΠΎΠ³Π΄Π°

      Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅!");

      ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

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

    πŸ’‘

    Для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ событий Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎΡ‡ΠΊΡƒ останова Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ ΠŸΡ€ΠΈΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠΈΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅ β€” здСсь ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈΠ‘ΠΎΠ±Ρ‹Ρ‚ΠΈΡ() (доступно Π² ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ΅).

    8. АсинхронныС события ΠΈ ΠΈΡ… ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΊΠ°ΠΌΠ½ΠΈ

    Начиная с вСрсии 8.3.6, Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ появилась ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° асинхронных ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² событий Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Асинхронно = Π˜ΡΡ‚ΠΈΠ½Π° Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ(). Π­Ρ‚ΠΎ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ интСрфСйса. Однако Ρƒ этого ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π΅ΡΡ‚ΡŒ Π²Π°ΠΆΠ½Ρ‹Π΅ особСнности:

    • ⏳ ΠžΡ‚Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ β€” асинхронный ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ запускаСтся послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Ρ†ΠΈΠΊΠ»Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ событий. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ измСнСния, сдСланныС Π² Ρ‚Π°ΠΊΠΎΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅, Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²ΠΈΠ΄Π½Ρ‹ сразу.
    • πŸ”„ ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ выполнСния β€” асинхронный ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ всСгда выполняСтся Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Π·Π°Π΄Π°Π½ΠΈΠΈ, Π΄Π°ΠΆΠ΅ Ссли Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² клиСнтском ΠΌΠΎΠ΄ΡƒΠ»Π΅. Π­Ρ‚ΠΎ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π΅Ρ‚ ограничСния Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ„ΠΎΡ€ΠΌΠΎΠΉ.
    • 🚫 ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡ β€” нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΊΠ½Π° (Вопрос(), ΠŸΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅()) ΠΈ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ элСмСнты Ρ„ΠΎΡ€ΠΌΡ‹.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ использования:

    Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ(
    

    Π­Ρ‚ΠΎΠžΠ±ΡŠΠ΅ΠΊΡ‚,

    "ΠŸΡ€ΠΈΠ—Π°ΠΏΠΈΡΠΈ",

    "ΠΡΠΈΠ½Ρ…Ρ€ΠΎΠ½Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Π—Π°ΠΏΠΈΡΠΈ",

    ,

    ,

    Π˜ΡΡ‚ΠΈΠ½Π° // Асинхронно

    );

    ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΡΠΈΠ½Ρ…Ρ€ΠΎΠ½Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Π—Π°ΠΏΠΈΡΠΈ(ΠžΡ‚ΠΊΠ°Π·, Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°) Экспорт

    // ⚠️ Π—Π΄Π΅ΡΡŒ нСльзя Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ„ΠΎΡ€ΠΌΠΎΠΉ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ!

    Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΠ’Π–ΡƒΡ€Π½Π°Π»("Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ записан асинхронно: " + ΠžΠ±ΡŠΠ΅ΠΊΡ‚.Бсылка());

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

    Випичная ошибка β€” ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ ΠΈΠ· асинхронного ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°:

    ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΡΠΈΠ½Ρ…Ρ€ΠΎΠ½Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°(ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€) Экспорт
    

    // ❌ ΠžΠ¨Π˜Π‘ΠšΠ: Ρ„ΠΎΡ€ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠΆΠ΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚Π° ΠΈΠ»ΠΈ нСдоступна

    Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Бтатус.Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ = "Π“ΠΎΡ‚ΠΎΠ²ΠΎ!";

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

    Для взаимодСйствия с интСрфСйсом ΠΈΠ· асинхронного ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠžΠΏΠΎΠ²Π΅ΡΡ‚ΠΈΡ‚ΡŒ():

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

    ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒΠžΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΠ΅(Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅) Экспорт

    Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.Бтатус.Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ = Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅.ВСкст;

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

    &НаБСрвСрС

    ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΡΠΈΠ½Ρ…Ρ€ΠΎΠ½Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°(ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€) Экспорт

    ΠžΠΏΠΎΠ²Π΅ΡΡ‚ΠΈΡ‚ΡŒ("ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°", Новый Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°("ВСкст", "Π“ΠΎΡ‚ΠΎΠ²ΠΎ!"));

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

    ⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’ Π²Π΅Π±-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ асинхронныС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Π΄ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… сСкунд ΠΈΠ·-Π·Π° особСнностСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡. НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΈΡ… для ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎΠΉ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π»ΠΎΠ³ΠΈΠΊΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ).
    Π§Π΅ΠΌ отличаСтся ΠžΠΏΠΎΠ²Π΅ΡΡ‚ΠΈΡ‚ΡŒ() ΠΎΡ‚ Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ()?

    ΠžΠΏΠΎΠ²Π΅ΡΡ‚ΠΈΡ‚ΡŒ() β€” это ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΌΠ΅ΠΆΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ взаимодСйствия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром Π±Π΅Π· прямого Π²Ρ‹Π·ΠΎΠ²Π°. Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для:

    • Асинхронной ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… с сСрвСра Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚
    • Π Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Π° "ΠΠ°Π±Π»ΡŽΠ΄Π°Ρ‚Π΅Π»ΡŒ"
    • ΠžΠ±Ρ…ΠΎΠ΄Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ контСкста выполнСния

    Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ() β€” просто Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ сообщСниС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΈ Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ модулями.

    МоТно Π»ΠΈ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π² асинхронном ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅?

    НСт, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Π°ΡΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π² асинхронных ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Ρ… игнорируСтся, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ основной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ события. Если Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ стандартноС дСйствиС, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ синхронный ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ.

    Как ΡƒΠ·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ?

    ΠœΠ΅Ρ‚ΠΎΠ΄ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π˜ΡΡ‚ΠΈΠ½Π°, Ссли подписка ΠΏΡ€ΠΎΡˆΠ»Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ это для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ:

    Если НЕ Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ(Π­Ρ‚ΠΎΠžΠ±ΡŠΠ΅ΠΊΡ‚, "ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ", "ΠœΠΎΠΉΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ") Π’ΠΎΠ³Π΄Π°
    

    Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Ошибка добавлСния ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°!");

    ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

    Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· ΠΠ°ΠΉΡ‚ΠΈΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ().

    ΠŸΠΎΡ‡Π΅ΠΌΡƒ событиС срабатываСт Π΄Π²Π°ΠΆΠ΄Ρ‹?

    Π”ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Ρ‹Π·ΠΎΠ²Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ происходит ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ:

    1. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π΄Π²Π°ΠΆΠ΄Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠŸΡ€ΠΈΠ‘ΠΎΠ·Π΄Π°Π½ΠΈΠΈΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅ ΠΈ Π² ΠŸΡ€ΠΈΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ).
    2. Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ инициируСтся ΠΈ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, ΠΈ Π½Π° сСрвСрС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ поля, привязанного ΠΊ сСрвСрным Π΄Π°Π½Π½Ρ‹ΠΌ).
    3. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΠ”Π΅ΠΉΡΡ‚Π²ΠΈΠ΅() вмСстС с Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ() для ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

    Для диагностики Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π²Ρ‹Π²ΠΎΠ΄ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°:

    Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π²Ρ‹Π·Π²Π°Π½: " + Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€());
    Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ события?

    Для очистки всСх ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ события ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ():

    ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ(Π­Ρ‚ΠΎΠžΠ±ΡŠΠ΅ΠΊΡ‚, "ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ");

    Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡ‹):

    ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ(Π­Ρ‚ΠΎΠžΠ±ΡŠΠ΅ΠΊΡ‚);