SuspendingAction
An Action that suspends while performing its work instead of blocking its calling thread.
Subclasses implement performSuspending instead of Action.perform. The actions framework (ActionRunRequest, ActionRunner, the JavaScript bridge, push and Scene/IAA actions) awaits it internally, so the ActionResult reflects the completed work, capped in the Scene/IAA case by that layout's own timeout: a Thomas layout only waits up to 5 seconds (ACTION_RUN_TIMEOUT in BaseModel) before continuing teardown, after which the action keeps running untracked.
Blocking entry points (Action.run, ActionRunRequest.runSync) still work for compatibility, but block the calling thread until the action completes; don't call them from the main thread.
Functions
Blocking bridge to performSuspending, provided for legacy callers.
Performs the action, suspending until it completes.
Inherited functions
Called before an action is performed to determine if the the action can accept the arguments.
Called after the action performs.
Called before an action is performed.
Performs the action, with pre/post execution calls, if it accepts the provided arguments.
Performs the action, with pre/post execution calls, if it accepts the provided arguments, suspending until the action completes.
Determines which thread runs the action.