File Explorer

/proc/thread-self/root/proc/thread-self/root/usr/lib64/python3.9/unittest

This explorer reads the filesystem of the server it runs on, so /workspace/user isn't present here. Browsing and the terminal still work against this server's own disk from /.

signals.py2.3 KB · 72 lines
import signalimport weakref from functools import wraps __unittest = True  class _InterruptHandler(object):    def __init__(self, default_handler):        self.called = False        self.original_handler = default_handler        if isinstance(default_handler, int):            if default_handler == signal.SIG_DFL:                # Pretend it's signal.default_int_handler instead.                default_handler = signal.default_int_handler            elif default_handler == signal.SIG_IGN:                # Not quite the same thing as SIG_IGN, but the closest we                # can make it: do nothing.                def default_handler(unused_signum, unused_frame):                    pass            else:                raise TypeError("expected SIGINT signal handler to be "                                "signal.SIG_IGN, signal.SIG_DFL, or a "                                "callable object")        self.default_handler = default_handler     def __call__(self, signum, frame):        installed_handler = signal.getsignal(signal.SIGINT)        if installed_handler is not self:            # if we aren't the installed handler, then delegate immediately            # to the default handler            self.default_handler(signum, frame)         if self.called:            self.default_handler(signum, frame)        self.called = True        for result in _results.keys():            result.stop() _results = weakref.WeakKeyDictionary()def registerResult(result):    _results[result] = 1 def removeResult(result):    return bool(_results.pop(result, None)) _interrupt_handler = Nonedef installHandler():    global _interrupt_handler    if _interrupt_handler is None:        default_handler = signal.getsignal(signal.SIGINT)        _interrupt_handler = _InterruptHandler(default_handler)        signal.signal(signal.SIGINT, _interrupt_handler)  def removeHandler(method=None):    if method is not None:        @wraps(method)        def inner(*args, **kwargs):            initial = signal.getsignal(signal.SIGINT)            removeHandler()            try:                return method(*args, **kwargs)            finally:                signal.signal(signal.SIGINT, initial)        return inner     global _interrupt_handler    if _interrupt_handler is not None:        signal.signal(signal.SIGINT, _interrupt_handler.original_handler)