我正在尝试使用Python和SimPy编写用于进程通信的程序。如果我将所有代码放在一个函数中并调用
simpy.Environment().process(function_one())
一切都运行得很好。但是,如果我在function_one()中调用另一个函数,如
def function_one(self):
function_two()
function_two永远不会被执行。如果我这样称呼它,将执行function_two
def function_one(self):
simpy.Environment().process(function_two())
然而,其余的function_one将被执行,并且不会等待function_two执行。我显然不想把我的所有代码放在一个函数中,所以任何帮助都会受到赞赏。
答案 0 :(得分:1)
传递给process()
的函数必须是生成事件实例的生成器函数。此外,您必须调用Environment.run()
才能实际执行模拟。您应该阅读tutorial以开始使用SimPy。