【发布时间】:2015-03-24 01:02:42
【问题描述】:
我正在尝试构建一个非常简单的屏障同步服务器,该服务器最初被提供了许多将与之通信的进程。当一个进程完成时,它会收到一条带有该进程的 Pid 的消息,并且它会保存一个每个进程的列表。当障碍达到零时(所有进程都已发送消息),我的服务器需要向其中的每一个发送消息(我使用[Pid | ProcList] 作为我的 pid 列表)。
我尝试使用辅助函数无济于事,列表推导使我陷入无限循环,因此我正在研究如何使用 lists:foreach 来解决这个问题。 我对函数式编程相当陌生,但据我了解,这个 foreach 需要接收列表以及 lambda-calculus 函数来向列表中的每个节点发送消息。由于“!”的中缀性质,我还没有找到一种不会导致语法错误的方法。
【问题讨论】:
标签: foreach erlang list-comprehension message-passing lambda-calculus