MessageQueue block can be used to queue incoming (In) events (i.e. messages with data) to be emitted to the output (Out) one-by-one, on Next event.
MessageQueue is a useful helper block to add guaranteed one-by-one processing for incoming events to avoid new event processing to be started before the previous event is fully processed.
Input and Output Events
|Input or Output
|Instructs to clear message queue, then emits Inited
|Will be emitted after Init is done
|Input events to be queued should be sent here
|Output events will be outputted via this one-by-one
|When Out message processing is finished, then this message should be sent to let the MessageQueue block know that it can emit another pending message to Out. When no pending events are in queue Empty will be emitted instead.
|Will be emitted in response to Next when there are no more pending events in queue