我正在使用simpy进行机器人模拟,我从编写一个简单的乒乓球游戏开始,它有两个球拍,分别称为ping和pong。只有当我添加一个yieldenv.timeout(0),让一个玩家为另一个玩家提供轮到他的机会时,它才能正常工作。如果我跳过这个noop(?),第一个球员就会一直抓住球。下面是我的代码: while True:
# Let theyield</em
将我的过程简化为最简单的例子,我想在我的simpy模拟中发生事件时启动一些可执行代码。我所做的就是将可执行代码设置为事件的回调。该可执行代码本身包含一些simpy事件处理,特别是超时。在我的实际代码中,这发生在一个进程中,但是这个简化的版本,其中event主要显示相同的问题行为:if __name__ == '__main__': prin