Open Search
    AioStatusInterface Class Reference

    #include <network_ioservice.h>

    Detailed Description

    This class is used to wait on the status of one or more asynchronous I/O operations.

    Public Member Functions

    MAXON_METHOD Result< BoolWait (const TimeValue &timeout=TIMEVALUE_INFINITE, WAITMODE mode=WAITMODE::DEFAULT)
     
    MAXON_METHOD ConditionVariableDependency AddDependency ()
     
    MAXON_METHOD Result< void > PushError (const Error &error)
     

    Static Public Member Functions

    static MAXON_METHOD AioStatusInterfaceAlloc (MAXON_SOURCE_LOCATION_DECLARATION)
     

    Private Member Functions

     MAXON_INTERFACE_NONVIRTUAL (AioStatusInterface, MAXON_REFERENCE_NORMAL, "net.maxon.interface.aiostatus")
     

    Member Function Documentation

    ◆ MAXON_INTERFACE_NONVIRTUAL()

    MAXON_INTERFACE_NONVIRTUAL ( AioStatusInterface  ,
    MAXON_REFERENCE_NORMAL  ,
    "net.maxon.interface.aiostatus"   
    )
    private

    ◆ Alloc()

    ◆ Wait()

    MAXON_METHOD Result<Bool> Wait ( const TimeValue timeout = TIMEVALUE_INFINITE,
    WAITMODE  mode = WAITMODE::DEFAULT 
    )

    Waits until all of the depending operations are completed, or until an optional timeout is reached. After wait returns, the AioStatus can be re-used.

    Parameters
    [in]timeoutSee ConditionVariable::Wait();.
    [in]modeSee ConditionVariable::Wait();.
    Returns
    True if all operations succeeded, false on timeout, or the aggregated error(s) if one or more operations failed.

    ◆ AddDependency()

    Adds a new dependency Wait() has to wait for.

    ◆ PushError()

    MAXON_METHOD Result<void> PushError ( const Error &  error)

    Adds an error to the aggregated result of Wait().