logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface

Application Usage

       None.

Description

       The  tcdrain()  function  shall  block  until  all  output written to the object referred to by fildes is
       transmitted. The fildes argument is an open file descriptor associated with a terminal.

       Any attempts to use tcdrain() from a process which is a member of a background process group on a  fildes
       associated  with its controlling terminal, shall cause the process group to be sent a SIGTTOU signal.  If
       the calling thread is blocking SIGTTOU signals or the process is ignoring SIGTTOU  signals,  the  process
       shall be allowed to perform the operation, and no signal is sent.

Errors

       The tcdrain() function shall fail if:

       EBADF  The fildes argument is not a valid file descriptor.

       EINTR  A signal interrupted tcdrain().

       EIO    The process group of the writing process is orphaned, the calling thread is not blocking  SIGTTOU,
              and the process is not ignoring SIGTTOU.

       ENOTTY The file associated with fildes is not a terminal.

       Thefollowingsectionsareinformative.

Examples

       None.

Future Directions

       None.

Name

       tcdrain — wait for transmission of output

Prolog

       This  manual  page  is part of the POSIX Programmer's Manual.  The Linux implementation of this interface
       may differ (consult the corresponding Linux manual page for details of Linux behavior), or the  interface
       may not be implemented on Linux.

Rationale

       None.

Return Value

       Upon  successful  completion,  0  shall  be  returned.  Otherwise,  -1 shall be returned and errno set to
       indicate the error.

See Also

tcflush()

       The Base Definitions volume of POSIX.1‐2017, Chapter11, GeneralTerminalInterface, <termios.h>

Synopsis

       #include <termios.h>

       int tcdrain(int fildes);

See Also