Erlang中文手册(Erldoc.com)  »  gen_tcp  »  controlling_process/2
Erlang并发编程 Erlang/OTP设计原理 Erlang/OTP[pdf] Mnesia用户手册[pdf] Erlang完整手册[en] 官网手册[en] 模块列表 方法列表 随机 Erlang中文社区(BBS) 美女图库

gen_tcp:controlling_process/2

改变一个套接字的控制进程

用法:

controlling_process(Socket, Pid) -> ok | {error, Reason}

为 Socket 分配一个新的控制进程 Pid。控制进程就是接收发自套接字消息数据的进程。如果被当前控制进程以外的其他任何进程调用,则会返回 {error, not_owner} 的错误。

{Rand, _RandSeed} = random:uniform_s(9999, erlang:now()),
Port = 40000 + Rand,
case gen_tcp:listen(Port, [binary, {packet, 0}, {active, false}]) of
    {ok, Socket} ->
        gen_tcp:controlling_process(Socket, self());
    _ ->
        socket_listen_fail
end.
阿里云 - 最高1000元通用代金券立即可用
沪ICP备13037221号-9