erlang第六天总结

1.异步接收用prim_inet:async_recv(Sock, Length, Timeout)

gen_server里面这样写

handle_info({inet_async, Socket, Ref, {ok, Data}}, State),要两者配合一起用,即handle_info作为async_recv的回调函数返回

接收的结果

2.prim_inet:async_recv的receive接收写法如下

loop(Socket) ->
prim_inet:async_recv(Socket, 0, 1000),
receive
    {inet_async, _ ,_ ,{ok, Msg}} ->
        io:format("message received ~p~n",[Msg]),
        loop(Socket);
    {inet_async,_,_,{error,timeout}} ->
        io:format("timeout !"),
        catch gen_tcp:close(Socket);
    {fake, Msg} -> io:format("Message = ~p~n", [Msg]),
                   loop(Socket)
end.

3.用case Status of的时候,注意Status必须是一个已确定的值,不能是未绑定的变量

4.在erlang shell调用exit(Pid, Reason)时,Pid应该写成这样形式pid(0,37,0)或者c:pid(0,37,0)

5.spawn的两种形式

spawn(Mod, Func, Args)

spawn(Fun)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值