У меня есть три TCP-сервера, к которым мне нужно подключиться, каждый с разными протоколами, но все в неблокирующем режиме. Прямо сейчас мой план состоит в том, чтобы открывать новые IO::Socket
для каждого и добавлять их в IO::Select
, а затем перебирать can_read()
. Идея основана на том, как серверы обычно пишутся на Perl, но похоже, что это может работать и для клиентов.
Мне интересно, лучший ли это способ сделать это, кроме того, мне также интересно, как я могу проверить каждое соединение на предмет отключения и инициировать повторное подключение к нему, не нарушая работу других сокетов. Любые примеры кода были бы отличным подспорьем или, по крайней мере, некоторые точки в правильном направлении о том, как лучше всего это сделать.