Table Of Contents

Wait on Interrupt(s) (G Dataflow)

Version:
    Last Modified: January 12, 2018

    Waits for any number of interrupts you included in the compiled FPGA VI running on the FPGA target.

    connector_pane_image
    datatype_icon

    reference in

    Reference to an FPGA VI.

    Obtain a reference using the Open FPGA VI Reference node.

    datatype_icon

    interrupt number(s)

    Number or array of numbers that specify the interrupt(s) for which the node waits.

    Typical supported values are 0 through 31 unless the target documentation specifies otherwise.

    Default: 0

    datatype_icon

    timeout (ms)

    Time, in milliseconds, that this node waits before timing out.

    If you want this node to wait indefinitely, set this parameter to -1.

    Default: 0

    datatype_icon

    error in

    Error conditions that occur before this node runs.

    The node responds to this input according to standard error behavior.

    Standard Error Behavior

    Many nodes provide an error in input and an error out output so that the node can respond to and communicate errors that occur while code is running. The value of error in specifies whether an error occurred before the node runs. Most nodes respond to values of error in in a standard, predictable way.

    error in does not contain an error error in contains an error
    If no error occurred before the node runs, the node begins execution normally.

    If no error occurs while the node runs, it returns no error. If an error does occur while the node runs, it returns that error information as error out.

    If an error occurred before the node runs, the node does not execute. Instead, it returns the error in value as error out.

    Default: No error

    datatype_icon

    reference out

    Reference to an FPGA VI.

    datatype_icon

    timed out?

    Boolean value that indicates whether the operation has timed out.

    True The operation timed out.
    False The operation did not time out.

    Default: True

    datatype_icon

    interrupt(s) asserted

    Interrupt(s) this node received.

    Empty or Negative Outputs

    If you are waiting for a single interrupt, a value of -1 indicates that the node did not receive the interrupt. If you are waiting for multiple interrupts, an empty array indicates that the node did not receive any interrupts.

    datatype_icon

    error out

    Error information.

    The node produces this output according to standard error behavior.

    Standard Error Behavior

    Many nodes provide an error in input and an error out output so that the node can respond to and communicate errors that occur while code is running. The value of error in specifies whether an error occurred before the node runs. Most nodes respond to values of error in in a standard, predictable way.

    error in does not contain an error error in contains an error
    If no error occurred before the node runs, the node begins execution normally.

    If no error occurs while the node runs, it returns no error. If an error does occur while the node runs, it returns that error information as error out.

    If an error occurred before the node runs, the node does not execute. Instead, it returns the error in value as error out.

    Acknowledging Interrupts

    Always acknowledge the source of interrupts after they occur using Acknowledge Interrupt(s).

    Specifying Unique Interrupt Numbers

    You can use several calls to the Wait on Interrupt(s) node to implement waiting on different interrupts from different places in a VI. If you do so, NI recommends you specify a unique interrupt number for each call to the Wait on Interrupt(s) node. Otherwise, you cannot guarantee the order in which the Wait on Interrupt(s) nodes will execute. This can lead to non-deterministic behavior or deadlocks.

    Reducing Thread Consumption to Optimize Execution

    The Wait on Interrupt(s) node consumes threads. The number of available threads is proportional to the number of processors on a machine. If the number of calls to the Wait on Interrupt(s) node equals or exceeds the number of available threads, other code in the application might pause until an interrupt occurs or the Wait on Interrupt(s) node otherwise returns. If you notice that other code in the application pauses, try reducing the number of calls to Wait on Interrupt(s).

    Where This Node Can Run:

    Desktop OS: Windows

    FPGA: Not supported

    Web Server: Not supported in VIs that run in a web application


    Recently Viewed Topics