asyncmsg_flush()

Flush the asynchronous messages sent through a connection

CAUTION:
Asynchronous messaging is an experimental feature; for information about the use of experimental software, see the Commercial Software License Agreement (CSLA) or Partner Software License Agreement (PSLA) in the Licensing area of our website, http://www.qnx.com/legal/licensing/.
Note: Asynchronous messaging support is in its own kernel module. In order to use it, you must add [module=async] to the procnto line of your mkifs buildfile.

Synopsis:

#include <sys/asyncmsg.h>

int asyncmsg_flush( int coid,
                    int mode );

Arguments:

coid
The connection ID of the connection you want to flush.
mode
0, or ASYNCMSG_FLUSH_NONBLOCK if you don't want the function to block.

Library:

libasyncmsg

Use the -l asyncmsg option to qcc to link against this library.

Description:

The asyncmsg_flush() function flushes the messages sent through the connection specified by the connection ID coid argument.

If you don't specify a mode of ASYNCMSG_FLUSH_NONBLOCK, the function doesn't return until all the existing messages are delivered to the receive side.

Returns:

EOK, or -1 if an error occurred (errno is set).

Errors:

EBADF
The connection specified by coid doesn't exist.

Classification:

QNX Neutrino

Safety:  
Cancellation point No
Interrupt handler No
Signal handler No
Thread Yes