Middleware, development tools, realtime operating system
software and services for superior embedded design


Home
QNX Community Resources
Developer Support
QNX Documentation Library
QNX Developer Support

QNX Developer Support

QNX Software Systems
Developer Resources
Blogs
Board support packages
Foundry27 projects
Forums
Hardware support listing
Online video tutorials
Product documentation
Technical Articles

[Previous] [Contents] [Index] [Next]

tcflush()

Flush the input and/or output stream

Synopsis:

#include <termios.h>

int tcflush( int fildes, 
             int queue_selector );

Arguments:

fildes
A file descriptor that's associated with the data stream that you want to perform the operation on.
queue_selector
The stream or streams that you want to flush. At least the following values for queue_selector are defined in <termios.h>:
  • TCIFLUSH -- discard all data that's received, but not yet read, on the device associated with fildes.
  • TCOFLUSH -- discard all data that's written, but not yet transmitted, on the device associated with fildes.
  • TCIOFLUSH -- discard all data that's written, but not yet transmitted, as well as all data that's received, but not yet read, on the device associated with fildes.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The tcflush() function flushes the input stream, the output stream, or both, depending on the value of the argument queue_selector.

Returns:

0
Success.
-1
An error occurred (errno is set).

Errors:

EBADF
Invalid fildes argument.
EINVAL
Invalid queue_selector argument.
ENOSYS
The resource manager associated with fildes doesn't support this call.
ENOTTY
The argument fildes doesn't refer to a terminal device.

Examples:

#include <termios.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdlib.h>

int main( void )
  {
    int fildes;

    fildes = open( "/dev/ser1", O_RDWR );

    /* Throw away all input data */
    tcflush( fildes, TCIFLUSH );

    close( fildes );
    return EXIT_SUCCESS;
  }

Classification:

POSIX 1003.1

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

See also:

tcdrain(), tcflow(), tcsendbreak()


[Previous] [Contents] [Index] [Next]