通过渠道传递价值

时间:2019-05-28 17:07:29

标签: uppaal

根据 http://www.it.uu.se/research/group/darts/uppaal/small_tutorial.pdf 没有值通过通道传递,但这很容易由共享变量编码:全局定义变量x,并将其用于读取和写入。 “

Uppaal随附的Train-Gate示例似乎是通过通道执行值的通信。我还创建了一个小示例,其中生产者从1到6循环计数,并在通道comm上通信comm[getN()]!getN()只是检索局部变量)。使用者与该通信comm[n]?同步,并将传递的整数值存储在本地变量中。

这似乎与以上陈述相矛盾。我在这里想念些微妙的东西吗?这不是通过渠道传递价值吗?还是这句话不再正确?

我已经通过Pastebin包含了完整的示例(producer-consumer.xml):https://pastebin.com/ZTL46Wr8

谢谢

1 个答案:

答案 0 :(得分:1)

在您的模型中,没有价值传递。实际上,您使用具有相同名称的通道同步来模拟传递的值:comm [n]!其中n实际上是一个变量,并且是comm [k]?其中k是选择器,即一个常数。消费者实际上并没有收到n的值;它接收到已针对某个固定值n发出comm [n]的信息。