Описание тега gen-tcp
NoneGen_tcp stands for 'Generic TCP' and is a module in Erlang that provides functions for TCP/IP communication.
3
ответа
Сообщения, использующие gen_tcp:send, не отправляются до тех пор, пока сокет не будет закрыт
Я хочу написать простой клиент, который отправляет сообщение на сервер и получает ответ. У меня есть сервер, который передает одно и то же сообщение всем подключенным клиентам, и он работает, когда я тестирую его с помощью telnet. Когда я пытаюсь сд…
08 сен '11 в 18:56
1
ответ
Erlang gen_tcp накапливает полученные данные
Это мой код для получения данных -module(t). -compile(export_all). start() -> {ok, LSock} = gen_tcp:listen(5555, [binary, {packet, 0}, {active, false}]), {ok, Sock} = gen_tcp:accept(LSock), {ok, Bin} = do_recv(Sock, []), ok = gen_tcp:close(Sock),…
08 май '14 в 16:54
3
ответа
Erlang пропущенные сообщения
Я запускаю следующий код с dbg:p(client, r): -module(client). -export([start/0, start/2, send/1, net_client/1]). start() -> start("localhost", 7000). start(Host, Port) -> io:format("Client connecting to ~p:~p.~n", [Host, Port]), register(ui, s…
15 ноя '10 в 23:13
1
ответ
Erlang tcp сервер / клиент, отправляющий сообщения
В настоящее время я пишу простой сервер, который будет работать с клиентами, которые подключаются, а затем общаются друг с другом, где сервер выступает в качестве посредника. Настройка: Сервер запускается 2 Клиента подключается к серверу Client1/2 о…
05 май '13 в 18:28
1
ответ
Невозможно принимать соединения на сокете, при создании сокетов на удаленном узле через RPC в Erlang
Я изо всех сил пытаюсь определить причину для gen_tcp:accept всегда возвращает ответ {error, closed}. По сути, у меня есть супервизор, который создает сокет прослушивания: gen_tcp:listen(8081, [binary, {packet, 0}, {active, false}, {reuseaddr, true}…
03 июл '15 в 05:57
1
ответ
Почему gen_tcp не определен в оболочке erlang?
После того, как я набрал 'gen_', а затем набрал Tab в оболочке erlang, я получил gen_server, gen_event, но я не получил gen_tcp. Как я могу использовать gen_tcp в оболочке erlang?
24 окт '13 в 15:33
1
ответ
Клиент закрыл после отправки сообщения, почему gen_tcp с опциями {active, false} принимают дважды
Я просто делаю тестирование с помощью gen_tcp. Один простой эхо-сервер и один клиент. Но клиент запущен и закрыт, сервер принимает два соединения, и одно в порядке, другое плохо. Любая проблема моего демо-сценария, и как это объяснить? сервер -modul…
03 дек '15 в 12:22
1
ответ
Gen_tcp:recv/3 закрывает сокет, если время ожидания истекло?
В настоящее время у меня есть сервер, который обрабатывает несколько подключений от клиентов, и клиент, который подключается к серверу, используя два подключения. Мой клиент имеет два процесса, которые обрабатывают соответственно отправку и получени…
03 мар '16 в 15:19
1
ответ
Как обрабатывать только один клиент одновременно в erlang gen_tcp?
У меня есть TCP-сервер, который прослушивает Ip: порт. listen(Ip, Port) -> Opts = [ binary, {active, false}, {packet, 0}, {reuseaddr, true}, {ip, Ip} ], case gen_tcp:listen(Port, Opts) of {ok, ListenSock} -> ?MODULE:loop_accept(ListenSock); {e…
04 фев '19 в 19:17
0
ответов
Erlang gen_tcp: отправить двоичный файл слиться?
Возможный дубликат: gen_tcp смял сообщения Иногда, когда я отправляю двоичные данные с gen_tcp:send он сливается во входящем, пример <<0,1>> а также <<1,0>> будет получен как <<0,1,1,0>>, Как я могу это исправить?…
01 дек '11 в 22:32
1
ответ
Не удается подключиться к определенному сетевому интерфейсу
Я прочитал документы для "inet", "gen_tcp", но не могу понять, где ошибка. connect_option () = {ip, inet: socket_address ()} socket_address () = ip_address () ip_address () = ip4_address () | ip6_address () ip6_address () = {0,65535, 0,65535, 0,6553…
29 май '17 в 14:39
1
ответ
Отправить точное количество байтов через сокет
Я читал, что в Erlang с помощью gen_tcp данные, передаваемые через сокет, могут быть объединены в один поток. Как я могу заставить сокет отправлять точно определенное количество байтов?
17 сен '12 в 07:56
0
ответов
Основанное на gen_tcp сервер / клиент постоянное и зашифрованное (ssl/tls) tcp соединение в erlang
У меня есть приложение для обмена сообщениями на основе erlang, где я использую модуль gen_tcp для связи между клиентом и сервером через tcp. текущая реализация не зашифрована и поэтому безопасна. Так что теперь я хотел бы использовать ssl/tls для з…
07 ноя '18 в 19:58
2
ответа
В чем разница между {активным, ложным}, {активным, истинным} и {активным, один раз}?
Как вы, наверное, знаете, существует три режима gen_tcp. {active, false}, {active, true} а также {active, once}, Я прочитал несколько документов о {active, false}, {active, true} а также {active, once}, Однако я не получил это. Какая разница между {…
16 июл '18 в 14:28
1
ответ
Как долго процесс получает сообщение о закрытии сокета
Предположим, у вас есть процесс Erlang, который обрабатывает сокет (gen_tcp/ssl), и узел закрывает соединение. Сколько времени нужно, чтобы процесс получил сообщение вроде: {tcp_closed, Socket} или же {ssl_closed, Socket} Это количество времени указ…
03 сен '12 в 07:52
1
ответ
Принятый сокет от задачи, терпящей неудачу в другом процессе
Я пытаюсь протестировать некоторый код эликсира и натолкнулся на поведение gen_tcp, которое я не понимаю. Когда я генерирую gen_tcp.accept сокет, я могу "получить к нему доступ" в задаче, в которой я его создал, но не в другом. Я решил, что это проб…
08 ноя '17 в 22:12
1
ответ
Как использовать Erlang ssl:close/2
У меня есть сервер ssl, и я хочу понизить его после получения первого ssl: recv до raw gen_tcp. Предполагая, что это может быть использовано, я не могу найти пример того, как это использовать. И я пока не очень хорош в использовании документации на …
09 авг '17 в 02:54
1
ответ
Ошибка CLOSED при параллельном установлении большого количества соединений с gen_tcp (ошибка?)
При попытке установить большое количество TCP-соединений параллельно я наблюдаю странное поведение, которое я считаю потенциальной ошибкой в gen_tcp, Сценарий заключается в том, что сервер прослушивает порт с несколькими одновременными получателями.…
20 июн '16 в 09:29
2
ответа
Какой двоичный файл получил gen_tcp:recv?
loop(Socket) -> case gen_tcp:recv(Socket, 0) of {ok, Bin} -> io:format("Bin=~p~n", [Bin]), loop(Socket); {error, Reason} -> io:format("Reason=~p~n", [Reason]) end. {env, [ {tcp_listen_options, [binary, {active, false}, {packet, 0}, {reusead…
02 окт '12 в 01:42
2
ответа
gen_server закрытие сокета прослушивания
Я пытаюсь сделать так, чтобы процесс gen_server принял нового клиента и немедленно породил нового потомка для обработки следующего. Проблема, с которой я сталкиваюсь, заключается в том, что когда сокет завершается и последовательно завершает работу,…
03 сен '11 в 04:49