unlink(Id) -> true
类型:
Id = pid() | port()
删除调用进程与另一个进程或由 Id
标识的端口之间的链接。我们将从这里调用已识别的进程或端口取消链接。
可以使用以下命令设置链接link/1
BIF。有关链接和由于链接而导致的退出信号的更多信息,请参阅流程中的章节Erlang参考手册:
一次unlink(Id)
返回后,保证调用者和未链接者之间的链接对将来的调用者没有影响(除非再次建立链接)。请注意,如果调用者是陷阱出口, 一个{'EXIT', Id, ExitReason}
由于链接而产生的消息可能在调用之前已被放置在调用者的消息队列中unlink(Id)
调用完成。另请注意,{'EXIT', Id,
ExitReason}
消息可能是链接的结果,但也可能是通过调用exit/2
BIF。因此,在调用后清理消息队列可能合适,也可能不合适。unlink(Id)
退出时如下:
unlink(Id),
receive
{'EXIT', Id, _} ->
true
after 0 ->
true
end
链接删除是异步执行的。如果这样的链接不存在,则不执行任何操作。的详细说明链路协议可以在分发协议的章节ERTS 用户指南.
注意
有关分布式信号的一些重要信息,请参阅 阻止信号传输部分中的流程的章节Erlang参考手册.
失败:badarg
(如果 Id
未识别进程或节点本地端口)。
相关用法
- erlang universaltime用法及代码示例
- erlang unregister用法及代码示例
- erlang universaltime()用法及代码示例
- erlang universaltime_to_localtime(Universaltime)用法及代码示例
- erlang unregister(RegName)用法及代码示例
- erlang uniform()用法及代码示例
- erlang uniform_s(State :: state())用法及代码示例
- erlang uniq(List1)用法及代码示例
- erlang uniq(Fun, List1)用法及代码示例
- erlang union_of_family(Family)用法及代码示例
- erlang unquote(QuotedData)用法及代码示例
- erlang update(Key, Fun, Orddict1)用法及代码示例
- erlang update(Key, Fun, Initial, Orddict1)用法及代码示例
- erlang update_counter(Key, Increment, Orddict1)用法及代码示例
- erlang update_formatter_config(HandlerId, FormatterConfig)用法及代码示例
- erlang update_formatter_config(HandlerId, Key, Value)用法及代码示例
- erlang update_handler_config(HandlerId, Config)用法及代码示例
- erlang update_primary_config(Config)用法及代码示例
- erlang update_process_metadata(Meta)用法及代码示例
- erlang update_proxy_config(Config)用法及代码示例
- erlang utilization(Sample)用法及代码示例
- erlang update(Key, Value, Map1)用法及代码示例
- erlang update_with(Key, Fun, Map1)用法及代码示例
- erlang update_with(Key, Fun, Init, Map1)用法及代码示例
- erlang uppercase(String :: unicode:chardata())用法及代码示例
注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 unlink(Id) -> true。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。