Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройств Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ .NET Compact FrameworkΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 153

Автор Иво Π‘Π°Π»ΠΌΡ€Π΅

НапримСр, Ссли Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Internet-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ Ρƒ вас Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Web-слуТб, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ запросы/ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ SOAP, Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ Π²Π°ΠΌ ΠΈ слСдуСт ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ; встроСнныС абстракции позволят Π²Π°ΠΌ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ массу Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, прСвращая ваши Web-запросы Π² простыС Π²Ρ‹Π·ΠΎΠ²Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Если для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ прилоТСния ΠΈΠ»ΠΈ Π² интСрСсах Π΅Π³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Π°Π΄Π°ΠΏΡ‚Π°Ρ†ΠΈΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒΡΡ Π²Π½ΠΈΠ· Π½Π° ΠΎΠ΄ΠΈΠ½ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, Ρ‚ΠΎ запросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ HTTP ΠΈΠ»ΠΈ HTTPS обСспСчат Π²Π°ΠΌ довольно высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ абстракции ΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π΄Ρ€ΡƒΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ брандмауэрам. Если окаТСтся, Ρ‡Ρ‚ΠΎ запросы/ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ HTTP Π½Π΅ Π² состоянии ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΡ‚ΡŒ ваши потрСбности, Ρƒ вас Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ срСдства ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ сокСтов ΠΈ создаваСмыС ΠΏΠΎΠ²Π΅Ρ€Ρ… сокСтов ΠΏΠΎΡ‚ΠΎΠΊΠΈ.

Π Π°Π±ΠΎΡ‚Π° Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ абстракции сокСтов услоТняСт ΠΊΠΎΠ΄, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ для взаимодСйствия с сСрвСрами Π²Π°ΠΌ придСтся ΡΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ собствСнныС ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹, Π° Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ простыС ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ тСстированныС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ запросов/ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² HTTP. Если вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ²ΡΠ·Ρ‹Π²Π°Ρ‚ΡŒΡΡ с сСрвСром, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ взаимодСйствия Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ сокСтов, Ρ‚ΠΎ рСкомСндуСтся Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания прокси-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Π½Π° сторонС сСрвСра, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ взаимодСйствовал Π±Ρ‹ с интСрфСйсом сокСта ΠΈ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, прСдоставлял Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ интСрфСйс HTTP ΠΈΠ»ΠΈ Web-слуТб. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ взаимодСйствиС сСрвСра с сСрвСром ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ характСризуСтся Π±ΠΎΠ»Π΅Π΅ высокой Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с взаимодСйствиСм ΠΌΠ΅ΠΆΠ΄Ρƒ устройством ΠΈ сСрвСром, Ρ‚ΠΎ описанная ΠΌΠ΅Ρ€Π° позволяСт Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° сторонС устройства ΠΈ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ вашСго мобильного прилоТСния.

Π Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… уровнях Π½ΠΈΠΆΠ΅ уровня сокСтов, Π° Ρ‚Π°ΠΊΠΆΠ΅ нСпосрСдствСнно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ стСк ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² TCP/IP ΠΈΠΌΠ΅Π΅Ρ‚ смысл лишь Π² ΠΊΡ€Π°ΠΉΠ½ΠΈΡ… случаях. Если Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΠΎΠ±ΠΌΠ΅Π½ Π½Π° этом ΡƒΡ€ΠΎΠ²Π½Π΅, Ρ‚ΠΎ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ Π²Π°ΠΌ, вСроятнСС всСго, придСтся Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ большой объСм собствСнного ΠΊΠΎΠ΄Π° Π½Π° языкС Π‘. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π΅Π³ΠΎ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ тСстирования ΠΏΠΎΡ‡Ρ‚ΠΈ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ стоят Ρ‚ΠΎΠ³ΠΎ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹ΡˆΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚ этого ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ВысокоуровнСвыС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, ΠΈ для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ‚Ρƒ ΠΆΠ΅ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ надСТности ΠΏΡ€ΠΈ использовании собствСнных ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², Π²Π°ΠΌ Π½Π°Π΄ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ΄Π΅Π»Π°Ρ‚ΡŒ нСвСроятно большой объСм Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π’ΠΎ ΠΆΠ΅ самоС справСдливо ΠΈ Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° TCP/IP; Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» TCP/IP ΠΈ Π½Π΅ являСтся самым ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠΌ для всСх Π·Π°Π΄Π°Ρ‡, Π½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ своими силами Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ тСстирования ΠΈ надСТности ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎ ΠΈ для этих стСков ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², ΠΎΡ‡Π΅Π½ΡŒ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ. Если Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ Π½Π΅ Π½Π°ΠΌΠ΅Ρ€Π΅Π²Π°Π΅Ρ‚Π΅ΡΡŒ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ коммСрчСский ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ тСстированиС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΎΡ‚ вас ΠΎΠ³Ρ€ΠΎΠΌΠ½Ρ‹Ρ… усилий, Ρ‚ΠΎ Π½Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ Ρ€Π΅Π·ΠΎΠ½Π° Π·Π°Π½ΠΎΠ²ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚ΡŒ колСсо, ΠΏΡ‹Ρ‚Π°ΡΡΡŒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ для Π²Π°ΡˆΠΈΡ… собствСнных Π½ΡƒΠΆΠ΄. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ 80% Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½ΠΎΠ³ΠΎ "колСса", ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠΆΠ΅ сущСствуСт ΠΈ ΠΏΡ€ΠΎΡˆΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠ»Π΅Ρ‚Π½Π΅Π΅ тСстированиС, Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡƒΡ‡ΡˆΠ΅, Ρ‡Π΅ΠΌ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ "колСсо" самому. ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ Π·Π° ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° использованиС Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня Π² стСкС ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ΄ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ высокоуровнСвыС ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ Π½Π΅ Π² состоянии ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΡ‚ΡŒ запросам вашСго мобильного прилоТСния.

ВсСгда исходитС ΠΈΠ· Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ связь ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°Ρ€ΡƒΡˆΠ΅Π½Π° Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚

ΠŸΡ€ΠΈ написании ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΊΠ»ΡŽΡ‡Π΅Π²ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠ³Ρ€Π°Ρ‚ΡŒ обСспСчСниС Π΅Π³ΠΎ отказоустойчивости. Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ часто ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠ³ΠΎ стСка, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ начинаСтся физичСским ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ, Π΄Π°Π»Π΅Π΅ содСрТит ΠΊΠ°Π½Π°Π»ΡŒΠ½Ρ‹Π΅ ΡƒΡ€ΠΎΠ²Π½ΠΈ ΠΈ ΡƒΡ€ΠΎΠ²Π½ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ΠΈ заканчиваСтся ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ прилоТСния. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ этих ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ уровня прСдусмотрСны встроСнныС срСдства ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ отказоустойчивости, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ ошибок ΠΈΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… сбоСв Π² процСссС связи. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв Π²Π°ΠΌ Π½Π΅ слСдуСт Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎ спСцификС Π½ΠΈΠΆΠ½ΠΈΡ… ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ; ситуация здСсь Π² Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стСпСни Ρ‚Π° ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ ΠΏΡ€ΠΈ написании ΠΊΠΎΠ΄Π° для Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΈ сСрвСров. ЕдинствСнноС Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… сСтях Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ связи ΡΠ»ΡƒΡ‡Π°ΡŽΡ‚ΡΡ Ρ‡Π°Ρ‰Π΅, Ρ‡Π΅ΠΌ Π² ΠΊΠ°Π±Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ»ΠΈ стационарных бСспроводных сСтях.

ΠŸΡ€ΠΈ написании отказоустойчивого ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°ΡŽΡ‚ΡΡ рСсурсы Π² случаС возникновСния ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠΉ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹. ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡ связи прСдставляСт собой слоТный процСсс, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠΉ многоступСнчатоС установлСниС мноТСства соСдинСний ΠΈ распрСдСлСниС систСмных рСсурсов. Π’ случаС возникновСния сбоСв Π² процСссС связи Π²Π°ΠΆΠ½ΠΎ воврСмя ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ систСмныС ΠΈ ΠΈΠ½Ρ‹Π΅ рСсурсы, ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ вашим ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π° Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ .NET Compact Framework, Ρ‚ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ осущСствитС профилактичСский Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Dispose() для освобоТдСния Ρ‚Π΅Ρ… рСсурсов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄.

Π’Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Dispose() ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ большоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΌΡƒ освобоТдСнию ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… систСмных рСсурсов Π΅Ρ‰Π΅ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ сборщик мусора Π·Π°ΠΊΡ€ΠΎΠ΅Ρ‚ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Π΅ дСскрипторы ΠΈ освободит Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ рСсурсы. Π’ Π΄Π°Π½Π½ΠΎΠΉ ситуации Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово Π‘# using (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, using(myObject) {...ваш ΠΊΠΎΠ΄...}), ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π΅Π³ΠΎ использованиС Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Dispose() Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² случаС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ выполнСния опрСдСляСмого ΠΈΠΌ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΈ ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π² этом Π±Π»ΠΎΠΊΠ΅. Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ классы .NET, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ System.Net.Sockets.Socket, Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ общСдоступного ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Dispose(), ΠΎΠ΄Π½Π°ΠΊΠΎ для Π½ΠΈΡ… прСдусмотрСн ΠΌΠ΅Ρ‚ΠΎΠ΄ Close(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈ слСдуСт Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ для освобоТдСния рСсурсов, ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠΌΠ΅ΡŽΡ‰ΡƒΡŽΡΡ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΏΠΎ всСм ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΡƒΡŽ ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ всС ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для восстановлСния рСсурсов этих ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π²Π°ΠΌ понятны.

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

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

ΠšΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ классы ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для освобоТдСния рСсурсов, Π²Ρ‹Π·ΠΎΠ² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· сбойной ситуации.

Если ΠΊΠ°Π½Π°Π» связи Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΡŒΡ‚Π΅ Π²Ρ‹Π·ΠΎΠ² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Close() ΠΈΠ»ΠΈ Dispose(), помСстив этот Π²Ρ‹Π·ΠΎΠ² Π² ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΠ½ΡƒΡŽ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΡƒΡŽ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок Π² случаС возникновСния сбоСв. Π‘Π±ΠΎΠΈ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ вашСго прилоТСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ обусловлСны Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π°Π·Ρ€Ρ‹Π²ΠΎΠΌ соСдинСния, Π½ΠΎ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, нСсоотвСтствиСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² синтаксичСского Π°Π½Π°Π»ΠΈΠ·Π° ΠΎΡ‚Π²Π΅Ρ‚Π° сСрвСра Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ оТидаСтся вашим ΠΊΠΎΠ΄. Π’ зависимости ΠΎΡ‚ Π²ΠΈΠ΄Π° прилоТСния ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… сСтСвых слуТб ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π²Π°ΠΆΠ½Ρ‹ΠΌ соблюдСниС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ связи. Π’Π°ΠΊ, Ссли вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ связываСтся с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ слуТбой Ρ‡Π΅Ρ€Π΅Π· сокСты, ΠΈ ΠΏΡ€ΠΈ этом ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ понятиС Π²Ρ…ΠΎΠ΄Π° ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· систСмы, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ прилоТСния Π² Π½Π΅ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Π½Π½Ρ‹Π΅ состояния ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ сСанс связи ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. ΠœΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ вмСсто простого Π²Ρ‹Π·ΠΎΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Close() вашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ сначала Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ сСанс связи, послав Π½Π° сСрвСр ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· систСмы ΠΈ Π²Ρ‹Π·Π²Π°Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ Shutdown() для сокСта, ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС этого Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Close(). ΠžΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ особСнности установлСния ΠΈ Ρ€Π°Π·Ρ€Ρ‹Π²Π° соСдинСний с Ρ‚Π΅ΠΌΠΈ слуТбами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ вашим ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. 

Π’ΠΎΠ·Π±ΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΡŽ висячих соСдинСний, ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

Под "ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ" понимаСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅: это ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ срСдой выполнСния ΠΈ ΠΊΠΎΠ΄ΠΎΠΌ прилоТСния. Π’ΠΎΠ·Π±ΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅ (ΠΈΠ»ΠΈ, Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, гСнСрация) ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ запускаСт Π² срСдС выполнСния слоТный процСсс, ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‰ΠΈΠΉΡΡ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ стСка для поиска ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ опСрациями, связанными с большими Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹ΠΌΠΈ расходами. Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ этот процСсс, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… рСсурсов ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠΌ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΡ‚ΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ возбуТдСния ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈ вмСсто этого Π·Π°Π±Π»Π°Π³ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π²Ρ‹ΡΠ²Π»ΡΡŽΡ‚ условия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ возникновСнию ошибок. Как ΠΈ Π² случаС Π΄Ρ€ΡƒΠ³ΠΈΡ… аспСктов ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅ΠΌ всСгда Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ количСствСнных экспСримСнтов. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²ΠΎΠ·Π±ΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ порядок выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π² вашСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ Π²Π°ΠΆΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, связанныС с освобоТдСниСм ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… рСсурсов, Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ этого Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… рСсурсов ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΡ‚Π°Ρ‚ΡŒΡΡ Π² "зависшСм" состоянии, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π² процСссС дальнСйшСго выполнСния прилоТСния.