erlang -- timeout 的简单使用

来源:互联网 发布:淘宝男装代理 编辑:程序博客网 时间:2024/05/17 03:26

            今天晚上有点晚了,不过还是坚持每一天写一个程序!

下面的时超时器 :

       建设A要想db进程发送一个信息,然后在规定的时间内等待消息的返回,那么A可以设置一个超时器,注意的是在发送消息之前,得先清空消息队列,要不然等译接到的消息可能db还没发送之前的了

read(Key)->flush(),db | {self(),{read,Key}},receive {read,R}-> {ok,R};{error,Reason}-> {error,Reason}after 1000->{error,timeout}end.flush()->receive {read,_}-> flush();{error,_}->flush()after 0->ok end.




0 0
原创粉丝点击