Вверх ↑
Этот топик читают: Гость
Ответов: 274
Рейтинг: 47
#1: 2010-07-21 16:16:49 ЛС | профиль | цитата
Объясните, если кто знает, почему так происходит?

Есть 2 схемы клиент и сервер
1. Запускаем Сервер
2. Запускаем клиент, нажимаем кнопку 3, сервер отвечает, нажимаем кнопку 2 сервер отвечает, все хорошо
3. Перезапускаем клиент, нажимаем кнопку 2, сервер молчит, нажимаем кнопку 3 сервер тоже молчит... непонятно почему...
4. Самое интересное Снова перезапускаем клиент. Нажимаем кнопку 1, тем самым открывая порт своего сервера, который никак не будет использоваться(даже порт другой поставил)
Нажимаем кнопку 2, и о чудо наш основной сервер отвечает, нажимаем кнопку 3, сервер тоже отвечает

Вопрос: Почему сервер не отвечает в пункте 2?
карма: 0

0
файлы: 2server.sha [1.3KB] [166], client.sha [1.5KB] [147]
Администрация
Ответов: 15295
Рейтинг: 1519
#2: 2010-07-21 16:33:56 ЛС | профиль | цитата
не Thread Safe значит
карма: 26
0
Ответов: 274
Рейтинг: 47
#3: 2010-07-21 16:40:25 ЛС | профиль | цитата
Dilma, А почему тогда он нормально работает если до соединения через поток было соединение не в потоке, либо открыт порт сервера, никак не взаимодействующего с клиентом?
карма: 0

0
Администрация
Ответов: 15295
Рейтинг: 1519
#4: 2010-07-21 16:52:52 ЛС | профиль | цитата
Laetar, когда в коде работает и поток, и очередь оконных сообщений происходить может все что угодно и когда угодно. Чтобы работать с сокетами из потоков нужно делать отдельную реализацию без использования скрытых окон, на которых сегодня построен и TCP_ServerXXX и TCP_Client
карма: 26
0
Ответов: 274
Рейтинг: 47
#5: 2010-07-21 17:06:35 ЛС | профиль | цитата
Dilma, Ясно, спасибо
карма: 0

0
5
Сообщение
...
Прикрепленные файлы
(файлы не залиты)