PHP 8.2.30
Preview: pycore_gil.h Size: 1.53 KB
/opt/alt/python312/include/python3.12/internal/pycore_gil.h

#ifndef Py_INTERNAL_GIL_H
#define Py_INTERNAL_GIL_H
#ifdef __cplusplus
extern "C" {
#endif

#ifndef Py_BUILD_CORE
#  error "this header requires Py_BUILD_CORE define"
#endif

#include "pycore_atomic.h"    /* _Py_atomic_address */
#include "pycore_condvar.h"   /* PyCOND_T */

#ifndef Py_HAVE_CONDVAR
#  error You need either a POSIX-compatible or a Windows system!
#endif

/* Enable if you want to force the switching of threads at least
   every `interval`. */
#undef FORCE_SWITCHING
#define FORCE_SWITCHING

struct _gil_runtime_state {
    /* microseconds (the Python API uses seconds, though) */
    unsigned long interval;
    /* Last PyThreadState holding / having held the GIL. This helps us
       know whether anyone else was scheduled after we dropped the GIL. */
    _Py_atomic_address last_holder;
    /* Whether the GIL is already taken (-1 if uninitialized). This is
       atomic because it can be read without any lock taken in ceval.c. */
    _Py_atomic_int locked;
    /* Number of GIL switches since the beginning. */
    unsigned long switch_number;
    /* This condition variable allows one or several threads to wait
       until the GIL is released. In addition, the mutex also protects
       the above variables. */
    PyCOND_T cond;
    PyMUTEX_T mutex;
#ifdef FORCE_SWITCHING
    /* This condition variable helps the GIL-releasing thread wait for
       a GIL-awaiting thread to be scheduled and take the GIL. */
    PyCOND_T switch_cond;
    PyMUTEX_T switch_mutex;
#endif
};

#ifdef __cplusplus
}
#endif
#endif /* !Py_INTERNAL_GIL_H */

Directory Contents

Dirs: 0 × Files: 90

Name Size Perms Modified Actions
611 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.96 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
30.55 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
6.59 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.12 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
16.58 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.38 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
5.92 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
8.48 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.31 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
3.30 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
3.83 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
5.14 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.68 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
15.46 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
3.37 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.84 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.27 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
499 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
6.23 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.07 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.58 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
562 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
842 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.17 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
7.72 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.66 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.54 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
4.52 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
480 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
9.04 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
611 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
7.48 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.16 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
490 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.53 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.96 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
112.66 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
24.84 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
3.65 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
4.19 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
6.21 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
5.57 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.93 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
8.87 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.36 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.93 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
7.62 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
383 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.16 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
392 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
14.57 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1016 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
26.64 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.04 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
19.61 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.62 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
1.33 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
606 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.67 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
3.04 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
709 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
3.29 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
8.40 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.97 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.59 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
4.87 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.03 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
346 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
8.23 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
5.77 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
44.68 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.55 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
414 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
937 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
923 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
6.87 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
999 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
388 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.98 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
3.42 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
3.00 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.15 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
4.62 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
763 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
898 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
2.59 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
122.57 KB lrw-r--r-- 2025-10-09 11:07:00
Edit Download
682 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download
740 B lrw-r--r-- 2025-10-09 11:07:00
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).