Wait On Asynchronous Call VI
- Updated2025-01-28
- 3 minute(s) read
Wait On Asynchronous Call VI
Waits for an asynchronous call to a target VI to finish executing and then returns the outputs of the target VI. To use the Wait On Asynchronous Call node on a reference, you must include the 0x100 option flag as part of the options input of the Open VI Reference function when you open the reference. You also must call the target VI with the Start Asynchronous Call node.

Inputs/Outputs
![]()
reference is a reference to a target VI that you want to call asynchronously.
The reference must meet the following criteria:
![]()
error in describes error conditions that occur before this node runs. This input provides standard error in functionality.
![]()
reference out returns reference unchanged.
![]()
error out contains error information. This output provides standard error out functionality.
|
Interface Details
The interface of this node includes the following features:
- No access to inputs of the target VI—The Wait On Asynchronous Call node does not provide access to the inputs of the target VI. You can pass inputs to the target VI when you call it with a Start Asynchronous Call node.
- Access to outputs of the target VI—When you wire a strictly typed VI reference to the reference input of the Wait On Asynchronous Call node, the node displays the output portion of the connector pane of the referenced VI. Use the output terminals of the connector pane to access the data returned by the target VI.
Execution Details
This node exhibits the following execution behaviors:
- Ability to wait for only a specified amount of time—To specify how long this node waits for the associated asynchronous call to complete, right-click the node and select Timeout from the shortcut menu to display the Timeout for Wait On Asynchronous Call dialog box. Use this dialog box to specify how long the node waits on the corresponding VI call before returning a timeout error.
- Ability to wait on multiple calls to the same VI reference—If you pass the same VI reference to multiple Start Asynchronous Call nodes, you cannot predict which Wait On Asynchronous Call node will detect the completion of each call. You can take precautions to match a Wait On Asynchronous Call Node to a specific VI call if necessary.
- Does not require the user interface thread to execute
Caveats and Recommendations
- Can be called before the corresponding Start Asynchronous Call node
- Every Start Asynchronous Call node that uses a 0x100 reference must have a corresponding Wait On Asynchronous node—If you start an asynchronous call to a call-and-collect reference, LabVIEW cannot free the reference until a Wait On Asynchronous Call node collects the outputs of the VI call to that reference.
Examples
Refer to the following example files included with LabVIEW.
- labview\examples\Application Control\VI Server\Asynchronous Call By Reference\Asynchronous Call and Collect.vi
- labview\examples\Application Control\VI Server\Asynchronous Call By Reference\Asynchronous Call and Collect (Using Option 0x40).vi