Files
Paul Eggert 87fb310b69 doc: be more like POSIX in threading terms
In documentation and comments, be more like POSIX in terminology
involving multithreading.  Explain the distinction between
multithreaded process vs multithreaded program.  Change “program”
to “process” when the latter wording is more accurate or informative.
Simplify the wording for the constraints on processes that use
unlocked I/O.  Change “multithread-safe” to “thread-safe”.
Change “thread-safety” to “thread safety”.
However, do not change “multithreaded” to “multi-threaded” even
though there are some uses of both spellinga, as there are a whole
bunch of uses of “multithreaded”, also in identifier names;
perhaps Gnulib should even standardize on “multithreaded”
(not “multi-threaded”), contra POSIX.
2026-04-11 13:21:19 -07:00

27 lines
864 B
Plaintext

@node accept4
@subsection @code{accept4}
@findex accept4
POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9799919799/functions/accept4.html}
Documentation:@* @uref{https://www.kernel.org/doc/man-pages/online/pages/man2/accept4.2.html,,man accept4}
Gnulib module: accept4
@mindex accept4
Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on many non-glibc platforms:
glibc 2.9, macOS 14, FreeBSD 6.0, NetBSD 7.1, OpenBSD 3.8, Minix 3.1.8, AIX 5.1, HP-UX 11, Solaris 11.3, Cygwin 1.7.1, mingw, MSVC 14, Android 4.4.
But the replacement function is not atomic; this matters in multi-threaded
processes that spawn child processes.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
@item
SOCK_CLOEXEC and SOCK_NONBLOCK may not be defined
as they're also significant to the socket() function.
@end itemize