跳转到内容

Erlang 编程/超时

摘自维基教科书,面向开放世界的开放书籍

超时由 [ receive - after - end ] 结构创建。超时使用毫秒衡量,因此 4000 = 4 秒。我们可以使用以下程序创建一个简单的定时器:myTimer.erl

% ============================================================ >%
-module( myTimer ).
-compile( export_all ).
                                                                %
% A simple timer that uses a timeout.
                                                                %
start( Timeout ) ->
    receive
    after Timeout ->
        io:format( "your ~w secs are up." , [Timeout/1000] )
    end.	
% ============================================================ >%
%
% Sample output:
% 
% 8> c(myTimer).
% ok.
%
% 9> myTimer:start(4000).
% your 4.00000 secs are up.ok

超时值可以是任何大于或等于 0 的数字,包括原子“infinity”。

华夏公益教科书