Эквивалент Java SocketChannel в Эрланге - PullRequest
0 голосов
/ 22 ноября 2010

Есть ли Erlang-эквивалент класса Java SocketChannel?Необходимо иметь возможность обрабатывать несколько соединений с сокетами клиента, используя один процесс Erlang.

Спасибо!

1 Ответ

3 голосов
/ 22 ноября 2010

Интерфейс gen_tcp позволяет довольно легко взаимодействовать с несколькими сокетами с помощью одного процесса Erlang.Используйте опцию сокета {active, Once} или, если вам повезет, опцию сокета {active, true}.Для одного / большого количества очень занятых сокетов последние могут создать больше сообщений в почтовом ящике вашего процесса Erlang, чем он может обработать, следовательно, {активный, один раз} является предпочтительным вариантом.

См .: http://www.erlang.org/doc/man/inet.html и http://www.erlang.org/doc/man/gen_tcp.html

Эта опция обычно указывается в вызовах gen_tcp: listen () или gen_tcp: connect (), хотя вы также можете изменить настройку режима 'active' в сокете, используя inet: setopts ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...