2017-01-25 14 views
0

두 개 이상의 다른 자원에서 선택 옵션을 프로세스에 부여하려면 어떻게합니까?두 개 이상의 자원 중 하나를 선택하기위한 로직을 사용하십시오.

유지 관리를 수행하는 데 사용할 수있는 공유 기능을 나타내는 리소스를 사용하여 프로세스의 유지 관리 활동을 시뮬레이션하고 있으므로이 작업을 수행해야합니다. 일부 유지 보수 활동은 한 유형의 설비 만 사용할 수 있지만 다른 유지 보수 활동은보다 유연하며 여러 유형의 설비를 사용할 수 있습니다.

SimPy 용어에서 하나의 프로세스는 하나의 고유 한 유형의 리소스 만 선택할 수 있지만 다른 프로세스는 여러 가지 고유 한 리소스 유형 중에서 선택할 수 있습니다. 내가 달성하기 위해 노력하고있어의

원유 설명 :

resource_A_req = resource_A.request() 

resource_B_req = resource_B.request() 

yield resource_A_req or resource_B_req 

겠습니까는 FilterStore 내 질문에 대한 답이 될 사용하는 방법을 학습?

답변

1

yield resource_A_req | resource_B_req이 도움이 될 수 있습니다. 그런 다음 문제가 발생하지 않도록하려면 어떤 요청이 성공적인지 확인하고 cancel()으로 전화해야합니다 (문서에서 "조건 이벤트"검색).

FilterStore도 작동 할 수 있습니다. 간단한 예는 this answer을 참조하십시오.

+0

스테판 감사합니다. 나는 성공으로 FilterStore를 시도했다! 나는 당신이 또한 제안하는 첫번째 방법을 시도 할 것이다. – bobo