MMCT TEAM
Server IP : 128.199.20.84  /  Your IP : 172.70.80.133
Web Server : Apache/2.4.41 (Ubuntu)
System : Linux competent-maruti 5.4.0-128-generic #144-Ubuntu SMP Tue Sep 20 11:00:04 UTC 2022 x86_64
User : www-data ( 33)
PHP Version : 8.0.20
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF
Directory (0755) :  /lib/python3/dist-packages/twisted/python/../python/../python/../python/../../landscape/lib/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //lib/python3/dist-packages/twisted/python/../python/../python/../python/../../landscape/lib/fd.py
"""A utility module which has FD-related functions.

This module mostly exists for L{clean_fds}, so it can be imported without
accidentally getting a reactor or something else that might create a critical
file descriptor.
"""

import os
import resource


def clean_fds():
    """Close all non-stdio file descriptors.

    This should be called at the beginning of a program to avoid inheriting any
    unwanted file descriptors from the invoking process.  Unfortunately, this
    is really common in unix!
    """
    rlimit_nofile = resource.getrlimit(resource.RLIMIT_NOFILE)[1]
    total_descriptors = min(4096, rlimit_nofile)
    for fd in range(3, total_descriptors):
        try:
            os.close(fd)
        except OSError:
            pass

MMCT - 2023