1 回答

TA貢獻1810條經(jīng)驗 獲得超5個贊
經(jīng)過一些研究和試驗/錯誤,我找到了解決方案?;旧?,當您使用“with res.request() as”語句時,您讓放置/釋放交互自行完成,這有助于避免錯誤。
為了獲取隊列狀態(tài)或與之交互,您只需在 with 語句之后調(diào)用它:(因為元素將在 with 語句之后位于資源隊列中)
import simpy
def env1(env):
res = simpy.Resource(env,capacity=1)
while True:
yield env.timeout(5)
print("Arriving Person at ",(env.now))
env.process(getResource(env, res))
def getResource(env,res):
with res.request() as req:
print("QUEUE SIZE: ",len(res.queue))
yield req
print("Person using resource at ", env.now)
yield env.timeout(20)
print("Leaving at ", env.now)
添加回答
舉報