接收语句是否可能有多个超时子句,如果是,那么正确的语法是什么?Erlang:接收包含多个超时子句的语句
我要像做
foo(Timout1, Timeout2) ->
receive
after
Timeout1 ->
doSomething1();
Timeout2 ->
doSomething2()
end.
其中,取决于其Timeout1
或Timeout2
较小,doSomething1()
或doSomething2
被调用。但是,上面的代码会导致语法错误。
如果我开始怀疑这是不可能的,那么以合适的Erlangy方式达到相同结果的最佳方法是什么?
在此先感谢!
为了便于阅读,您可能需要使用timer:sleep(Timeout)而不是空的接收语句。 – Zed
谢谢 - 我没有包含任何接收子句,因为它们与此问题无关。 – grifaton