getdtablesize(3) — Linux manual page

getdtablesize(3)        Library Functions Manual        getdtablesize(3)

NAME

       getdtablesize - get file descriptor table size

LIBRARY

       Standard C library (libc, -lc)

SYNOPSIS

       #include <unistd.h>

       int getdtablesize(void);

   Feature Test Macro Requirements for glibc (see
   feature_test_macros(7)):

       getdtablesize():
           Since glibc 2.20:
               _DEFAULT_SOURCE || ! (_POSIX_C_SOURCE >= 200112L)
           glibc 2.12 to glibc 2.19:
               _BSD_SOURCE || ! (_POSIX_C_SOURCE >= 200112L)
           Before glibc 2.12:
               _BSD_SOURCE || _XOPEN_SOURCE >= 500

DESCRIPTION

       getdtablesize() returns the maximum number of files a process can
       have open, one more than the largest possible value for a file
       descriptor.

RETURN VALUE

       The current limit on the number of open files per process.

ERRORS

       On Linux, getdtablesize() can return any of the errors described
       for getrlimit(2); see VERSIONS below.

ATTRIBUTES

       For an explanation of the terms used in this section, see
       attributes(7).
       ┌─────────────────────────────────────┬───────────────┬─────────┐
       │ Interface                           Attribute     Value   │
       ├─────────────────────────────────────┼───────────────┼─────────┤
       │ getdtablesize()                     │ Thread safety │ MT-Safe │
       └─────────────────────────────────────┴───────────────┴─────────┘

VERSIONS

       The glibc version of getdtablesize() calls getrlimit(2) and
       returns the current RLIMIT_NOFILE limit, or OPEN_MAX when that
       fails.

       Portable applications should employ sysconf(_SC_OPEN_MAX) instead
       of this call.

STANDARDS

       None.

HISTORY

       SVr4, 4.4BSD (first appeared in 4.2BSD).

SEE ALSO

       close(2), dup(2), getrlimit(2), open(2)

COLOPHON

       This page is part of the man-pages (Linux kernel and C library
       user-space interface documentation) project.  Information about
       the project can be found at 
       ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report
       for this manual page, see
       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
       This page was obtained from the tarball man-pages-6.9.1.tar.gz
       fetched from
       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
       2024-06-26.  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-
       to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not
       part of the original manual page), send a mail to
       man-pages@man7.org

Linux man-pages 6.9.1          2024-06-16               getdtablesize(3)