how to determine whether a queue is empty in Simevents and do some actions based on this observation?

1 view (last 30 days)
Hi guys,
I want to model a queue with vacations. When the queue is empty, the server will have a period of vacation with certain distribution.(I can use use gate to block the server ) So I need to get the data of the number of entity in queue block. Could you please tell me how to do that?
Many thanks.
  1 Comment
Tianhao Guo
Tianhao Guo on 23 Apr 2016
Edited: Tianhao Guo on 23 Apr 2016
Sorry that I am not very familiar with Matlab. Maybe I can write a discrete event-driven queue using customized block. So if you know where to find these kinds of resources. It will be of great help as well.

Sign in to comment.

Answers (1)

Nikhil Vyas
Nikhil Vyas on 27 Apr 2016
The Queue blocks(and almost all the other similar blocks of simevents) has a Statistics Tab in the Block Parameters.
This would result in an additional port #n appearing on the block. You can monitor this port to check the number of entities in the queue at any time. If #n gives you 0, the queue is currently empty.
  1 Comment
Tianhao Guo
Tianhao Guo on 27 Apr 2016
Thank you for you answer. Sorry, I didn't explain clearly. A queue with vacation means that I need to close the gate as soon as the queue is empty. Then how to monitor this port? Maybe I should let the queue trigger something when it is empty.

Sign in to comment.

Categories

Find more on Messages in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!