Skip to content

Gate

A Gate controls when entities are allowed to move on. It does no work and holds nothing of its own; it opens and closes, releasing entities while open and making them wait while closed. Use it for a barrier that follows a schedule, responds to a signal, or waits for downstream demand.

The Gate node

Default State sets whether the gate begins Normally Open or Normally Closed. From there, one or more mechanisms change its state during the run, and you can combine them.

  • On a schedule: open the gate during set time windows, or tie it to a shift calendar so entities move only during working hours.
  • On a condition: give an open or close condition, a live expression over the model’s state. This is how a gate reacts to a signal: a condition such as Signal('Go').Active opens the gate the moment that signal is sent (see Signal).
  • From action logic: open or close the gate directly with OpenGate, CloseGate, or ToggleGate from anywhere in the model. Once logic takes control this way, it keeps control for the rest of the run.
  • On downstream demand: run the gate as a pull or Kanban control, or cap the work in progress downstream, so it releases only when the next step has room.

While the gate is open, the Release Mode decides how many entities go through: one at a time, a set number, everything at once, at a limited rate, or within a repeating window.

Entities that arrive while the gate is closed wait in the gate’s own queue. The Queue Order sets who leaves first, and a Queue Capacity makes the gate refuse new entities once full, backing them up upstream.

On the Events tab you can run action logic when the gate opens, closes, releases an entity, or blocks one, for logging or other side effects.