这是通过Host
接收某些任务类型的方法:
task = Task.receive(String mailbox);
if (task instanceof SomeTask):
SomeTask sometesk = (SomeTask) task;
// Do something
但是有什么办法可以像
sometask
那样直接接收sometask = Sometask.receive(String mailbox)
吗? 最佳答案
在Java中,要过滤要接收的任务还不如在MSG的C版本中进行开发。
使用其他邮箱不要混合任务,这样可以避免以后将它们整理出来的困难。
SimGrid示例中没有简单的示例,但是有几个应用程序使用此功能。例如,bittorrent示例(显然不简单)使用一个邮箱进行与当前主机的常规通信,而使用另一个邮箱接收来自跟踪器的消息。这样,当您期望来自跟踪器的消息时,您将无法从随机对等方获得消息。