Erlang模式不匹配,但正确,该怎么办?

use*_*234 2 erlang pattern-matching

我在erlang中有一个模式匹配的疯狂问题:

我的接收块:

...
receive
    {set_val,Val} -> 
        log("got: ~p",[Val]);

    Any ->
        log("~p is an unknown command",[Any])
end.
Run Code Online (Sandbox Code Playgroud)

我送的是什么:

...
{myreceive,myreceive@workstation} ! {set_val,100}
Run Code Online (Sandbox Code Playgroud)

我的日志中出现了什么:

{set_val,100} is an unknown command
Run Code Online (Sandbox Code Playgroud)

怎么来,第一个模式不匹配?(以及如何使其匹配:/)

Pas*_*cal 5

我看到的唯一可能是Val已经在你的函数中绑定到一个不同于100的值.