多对一和多对多通信
开始侦听多对一通信的信道.
In[1]:=
listener = ChannelListen["master"]
Out[1]=
发送消息给来自多个会话的信道(例如,来自于同一台机器上的并行内核).
In[2]:=
ParallelEvaluate[ChannelSend["master", $KernelID]]
Out[2]=
收到的消息.
In[3]:=
listener["Message", All]
Out[3]=
消息交换图表.
显示完整的 Wolfram 语言输入
Out[5]=
在多个并行内核会话中开始侦听相同信道.
In[6]:=
ParallelEvaluate[l = ChannelListen["all"]]
Out[6]=
让所有并行内核向通道发送其对应的 ID.
In[7]:=
ParallelEvaluate[ChannelSend["all", $KernelID]]
Out[7]=
侦听者收到的消息以及其相对的内核 ID.
In[8]:=
ParallelEvaluate[$KernelID -> l["Message", All]]
Out[8]=
交换图表.
显示完整的 Wolfram 语言输入
Out[9]=