|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
Я открываю TCP сервер. Как мне проверить что сокет клиента живой, что соединение с клиентом присутствует? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 09:28 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
jenya7, только обменяться данными ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 10:03 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
Изопропилjenya7, только обменяться данными в эмбедед когда я открываю сокет я включаю KEEPALIVE опцию. А в С# если я создал TCP Listener - у него есть такая опция? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 10:29 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
jenya7, Опция есть, но работает keepalive совсем не так как многие ожидают ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 10:51 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
Изопропилjenya7, Опция есть, но работает keepalive совсем не так как многие ожидают а что вы посоветуете? как сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 11:17 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
jenya7, Предусмотреть в своём протоколе обмен эхо-пакетами ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 11:19 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
Изопропилjenya7, Предусмотреть в своём протоколе обмен эхо-пакетами но keepalive так и работает - он посылает системный пакет (len=0) и получает ответ. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 11:30 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
jenya7, Параметр означает Не закрывать и переиспользовать соединение. Так что уточняйте вопрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 12:03 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
Petro123jenya7, Параметр означает Не закрывать и переиспользовать соединение. Так что уточняйте вопрос. в эмбеде мы делаем так - если есть ошибка мы закрываем сокет и открываем заново, пытаемся сделать реконект, если нет ошибки а просто нет связи с сервером мы сокет не закрываем. А как это сделать в С#? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 12:59 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
jenya7эмбеде мы делаем так Фиг знает что это, но думаю, что точно также пишите и тут. Imho. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2017, 13:20 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
TCP соединение всегда живое, потому что это протокол передачи данных. Имеет смысл проверять, открыт ли нужный порт по протоколу TCP jenya7А в С# если я создал TCP Listener - у него есть такая опция? Listener пассивно слушает, а вам надо активно проверить. Если не забуду, то завтра с работы дам код ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2017, 18:32 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
jenya7но keepalive так и работает - он посылает системный пакет (len=0) и получает ответ. и как часто? как приложение узнаёт о потере связи? У Стивенса в книге всё хорошо описано ... |
|||
:
Нравится:
Не нравится:
|
|||
19.12.2017, 18:55 |
|
Проверить если TCP соединение живое.
|
|||
---|---|---|---|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2017, 09:52 |
|
|
start [/forum/topic.php?fid=20&msg=39572476&tid=1399555]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
58ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 162ms |
0 / 0 |