<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1571411</guid>
        <pubDate>Sat, 19 May 2007 13:13:16 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1571411</link>
        <description><![CDATA[Сэйдж: Всем спасибо за помощь, вопрос решился, только оказывается дело в потоках было.  :whistle:]]></description>
        <author>Сэйдж</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1569796</guid>
        <pubDate>Fri, 18 May 2007 05:27:54 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1569796</link>
        <description><![CDATA[Stereon: У TCPClient есть такой делегат &quot;Terminated&quot;,<br>может всех подключившихся хранить в массиве типа объект в котором есть TcpClient, и номер ячейки в котором находиться объект.<br>При возникновении вызова делегата ( т.е. при отключении клиента), заранее ты ему привязываешь метод из вышеуказанного объекта, и тот просто сам себя удаляет<br>из массива соединений.<br><br>Я сделал так у себя в мессенджере, всё работало нормально и достаточно удобно.]]></description>
        <author>Stereon</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1569395</guid>
        <pubDate>Thu, 17 May 2007 15:42:49 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1569395</link>
        <description><![CDATA[Сэйдж: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=185951&view=findpost&p=1568545'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>FlyDead &#064; <time class="tag-quote__quoted-time" datetime="2007-05-17T08:08:47+00:00">17.05.07, 08:08</time></span><div class='quote '><strong class='tag-b'>Сэйдж</strong> тут еще зависит от того какую функциональность ты хочешь получить....<br>
Твой вопрос напоминает мне следующее:<br>
Ты хочешь каждый раз с клиента проверять не отправил ли сервер чего-то новенького ( предполагаю что для всех клиентов )...<br>
Если это так, то легче сформировать обратную функциональность.<br>
Со стороны сервера проверять подключился ли клиент, если да , то отсылать ему данные...</div></div><br>
Функциональность даже проще. Есть приложение (которое выступает и как клиент, и как сервер). Запускаем его на одном компьютере, запускаем на другом. Естественно они соединены по сети.  :)  Так вот, у обоих могут появится данные друг для друга, которые должны быть оперативно приняты. Для этого я постоянно проверяю TcpClent-ом NetworkStream (видимо криворукий способ, но другого я не знаю, первый раз заюзал сокеты и потоки в приложении).]]></description>
        <author>Сэйдж</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568545</guid>
        <pubDate>Thu, 17 May 2007 08:08:47 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568545</link>
        <description><![CDATA[FlyDead: <strong class='tag-b'>Сэйдж</strong> тут еще зависит от того какую функциональность ты хочешь получить....<br>
Твой вопрос напоминает мне следующее:<br>
Ты хочешь каждый раз с клиента проверять не отправил ли сервер чего-то новенького ( предполагаю что для всех клиентов )...<br>
Если это так, то легче сформировать обратную функциональность.<br>
Со стороны сервера проверять подключился ли клиент, если да , то отсылать ему данные...]]></description>
        <author>FlyDead</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568474</guid>
        <pubDate>Thu, 17 May 2007 07:24:55 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568474</link>
        <description><![CDATA[Сэйдж: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=185951&view=findpost&p=1568441'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>wdk &#064; <time class="tag-quote__quoted-time" datetime="2007-05-17T06:59:50+00:00">17.05.07, 06:59</time></span><div class='quote '>Socket.Select не поможет? Юзал его на стороне сервера для проверки активности клиентов.</div></div><br>
Хммм, похоже правду, вечером надо будет попробовать, может не будет тормозить.<br>
<br>
Только, мне надо на стороне клиента для проверки активности &quot;сервера&quot;.  :) <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>-Added <time class="tag-mergetime" datetime="2007-05-17T07:26:58+00:00">17.05.07, 07:26</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=185951&view=findpost&p=1568471'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>wdk &#064; <time class="tag-quote__quoted-time" datetime="2007-05-17T07:21:37+00:00">17.05.07, 07:21</time></span><div class='quote '>Вот тебе тупое решение:<br>
Сделай у клиента UDPServer, который будет слушать порт, а у сервера UDPClient, который будет слать сообщение &quot;вот, я ожил&quot;&#33; Может и криво, но работать будет.</div></div><br>
Это надо будет оставить на крайняк. Но как workaround однозначно подойдет, спасибо.]]></description>
        <author>Сэйдж</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568471</guid>
        <pubDate>Thu, 17 May 2007 07:21:37 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568471</link>
        <description><![CDATA[wdk: Вот тебе тупое решение:<br>Сделай у клиента UDPServer, который будет слушать порт, а у сервера UDPClient, который будет слать сообщение &quot;вот, я ожил&quot;&#33; Может и криво, но работать будет.]]></description>
        <author>wdk</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568456</guid>
        <pubDate>Thu, 17 May 2007 07:12:41 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568456</link>
        <description><![CDATA[Сэйдж: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=185951&view=findpost&p=1568305'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Pit&#045;Bul &#064; <time class="tag-quote__quoted-time" datetime="2007-05-17T05:48:29+00:00">17.05.07, 05:48</time></span><div class='quote '>это получается что ты просто каждые пол секунды создаешь коннект к серверу и разрываешь его, смысл :blink: ?<br>
Если ты так часто общаешься со своим сервером, то уж создай коннект и просто постоянно слушай что скажет тебе твой сервер</div></div><br>
ОК, допустим запускаем клиент, сервер при этом не запущен, соответственно непрерывно читать данные никак.  :(   Нужно будет оперативно отловить момент, что сервер запустился и считать данные, а как ?<br>
<br>
Сервер у меня просто мое приложение, на основе TcpListener <br>
<br>
<span class="tag-color tag-color-named" data-value="gray" style="color: gray"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2007-05-17T07:19:00+00:00">17.05.07, 07:19</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=185951&view=findpost&p=1568417'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>FlyDead &#064; <time class="tag-quote__quoted-time" datetime="2007-05-17T06:51:37+00:00">17.05.07, 06:51</time></span><div class='quote '>под этим понимается проверка на доступность сервера?</div></div><br>
Очень корректный вопрос, сорри что сразу не пояснил. Под этим подразумевается, запущен ли мой &quot;сервер&quot; (просто прога на основе TcpListener) или нет. То есть проверять нужно по IP/порту. Или какой то другой способ есть ?]]></description>
        <author>Сэйдж</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568441</guid>
        <pubDate>Thu, 17 May 2007 06:59:50 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568441</link>
        <description><![CDATA[wdk: Socket.Select не поможет? Юзал его на стороне сервера для проверки активности клиентов.]]></description>
        <author>wdk</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568417</guid>
        <pubDate>Thu, 17 May 2007 06:51:37 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568417</link>
        <description><![CDATA[FlyDead: <strong class='tag-b'>Pit-Bul</strong> читай вопросы...<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=185951&view=findpost&p=1568305'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Pit&#045;Bul &#064; <time class="tag-quote__quoted-time" datetime="2007-05-17T05:48:29+00:00">17.05.07, 05:48</time></span><div class='quote '>Но как, блин, по другому организовать постоянный опрос сервера </div></div><br>
под этим понимается проверка на доступность сервера?]]></description>
        <author>FlyDead</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568305</guid>
        <pubDate>Thu, 17 May 2007 05:48:29 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568305</link>
        <description><![CDATA[Pit-Bul: это получается что ты просто каждые пол секунды создаешь коннект к серверу и разрываешь его, смысл :blink: ?<br>Если ты так часто общаешься со своим сервером, то уж создай коннект и просто постоянно слушай что скажет тебе твой сервер]]></description>
        <author>Pit-Bul</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568156</guid>
        <pubDate>Wed, 16 May 2007 21:43:54 +0000</pubDate>
        <title>Проблемы с TcpClient</title>
        <link>https://forum.sources.ru/index.php?showtopic=185951&amp;view=findpost&amp;p=1568156</link>
        <description><![CDATA[Сэйдж: Доброго времени суток всем обратившим внимание.<br>
<br>
Ситуация: постоянно нужно проверять сервер (прога на основе TcpListener) не отправил ли он чего нового через NetworkStream, сервер может быть запущен, а может и не запущен.<br>
<br>
Вот когда он не запущен, следующий код (выполняется каждые пол-секунды)<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">private TcpClient client = new TcpClient();</div><div class="code_line">&nbsp;</div><div class="code_line">...</div><div class="code_line">&nbsp;</div><div class="code_line">public void Call()</div><div class="code_line">{</div><div class="code_line">&nbsp;</div><div class="code_line">&nbsp;&nbsp; &nbsp; try</div><div class="code_line">&nbsp;&nbsp; &nbsp; {</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (!client.Connected)</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; client.Connect(computerName, 6007);</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (client.Connected)</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ... &nbsp; &nbsp; </div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}</div><div class="code_line">&nbsp;&nbsp; &nbsp; }</div><div class="code_line">&nbsp;&nbsp; &nbsp; catch (Exception ex)</div><div class="code_line">&nbsp;&nbsp; &nbsp; {</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;...</div><div class="code_line">&nbsp;&nbsp; &nbsp; }</div><div class="code_line">}</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
<br>
тормозит всё приложение, несмотря на то, что метод Call() запускается в отдельном потоке.  <br>
Ясно, что всё дело в том, что при выключенном сервере, постоянно генерится исключение и из-за него прога вешается. Но как, блин, по другому организовать постоянный опрос сервера (или какую-нибудь шуструю проверку up сервак или down по такому-то IP/порту) я не допер.  :wall: <br>
Буду очень признателен, если кто подскажет как можно выкрутиться.]]></description>
        <author>Сэйдж</author>
        <category>.NET: Распределенные приложения</category>
      </item>
	
      </channel>
      </rss>
	