Interface RETURN_IORQ

Preprocessor macro expanding to a command

SpaceUser/kernel
ContextAsync
May blockNo
SPLHigher or equal than SPL of AST or IORQ
Dynamic memoryNo

#include <SPAD/AC.H>

RETURN_IORQ(iorq, handler);

Description

The behavior of RETURN_IORQ(iorq, handler) is equivalent to
CALL_IORQ(iorq, handler);
RETURN;
RETURN_IORQ is faster than the above sequence, because in most cases IORQ doesn't have to be queued and then extracted from the queue.

Arguments

Implementation note

There is slight difference between CALL_IORQ; RETURN and RETURN_IORQ: CALL_IORQ and RETURN queue the IORQ after all ASTs and IORQs on a given SPL, but RETURN_IORQ executes the IORQ directly, jumping the queue. Because order of executing ASTs and IORQs is not defined, code must be written in such a way that this difference doesn't change behavior.

See also

CALL_IORQ, RETURN, DECL_IOCALL