2 from types import FrameType, TracebackType
3 from typing import Any, Callable, Iterable, Mapping, Optional, Type, TypeVar
6 _TF = Callable[[FrameType, str, Any], Optional[Callable[..., Any]]]
8 _PF = Callable[[FrameType, str, Any], None]
13 def active_count() -> int: ...
14 def current_thread() -> Thread: ...
15 def currentThread() -> Thread: ...
16 def get_ident() -> int: ...
17 def enumerate() -> list[Thread]: ...
18 def main_thread() -> Thread: ...
20 if sys.version_info >= (3, 8):
21 from _thread import get_native_id as get_native_id
23 def settrace(func: _TF) -> None: ...
24 def setprofile(func: _PF | None) -> None: ...
25 def stack_size(size: int = ...) -> int: ...
29 class ThreadError(Exception): ...
32 def __getattribute__(self, name: str) -> Any: ...
33 def __setattr__(self, name: str, value: Any) -> None: ...
34 def __delattr__(self, name: str) -> None: ...
43 target: Callable[..., Any] | None = ...,
44 name: str | None = ...,
45 args: Iterable[Any] = ...,
46 kwargs: Mapping[str, Any] | None = ...,
48 daemon: bool | None = ...,
50 def start(self) -> None: ...
51 def run(self) -> None: ...
52 def join(self, timeout: float | None = ...) -> None: ...
53 def getName(self) -> str: ...
54 def setName(self, name: str) -> None: ...
55 if sys.version_info >= (3, 8):
57 def native_id(self) -> int | None: ... # only available on some platforms
58 def is_alive(self) -> bool: ...
59 if sys.version_info < (3, 9):
60 def isAlive(self) -> bool: ...
61 def isDaemon(self) -> bool: ...
62 def setDaemon(self, daemonic: bool) -> None: ...
64 class _DummyThread(Thread): ...
67 def __init__(self) -> None: ...
68 def __enter__(self) -> bool: ...
70 self, exc_type: Type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None
72 def acquire(self, blocking: bool = ..., timeout: float = ...) -> bool: ...
73 def release(self) -> None: ...
74 def locked(self) -> bool: ...
77 def __init__(self) -> None: ...
78 def __enter__(self) -> bool: ...
80 self, exc_type: Type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None
82 def acquire(self, blocking: bool = ..., timeout: float = ...) -> bool: ...
83 def release(self) -> None: ...
88 def __init__(self, lock: Lock | _RLock | None = ...) -> None: ...
89 def __enter__(self) -> bool: ...
91 self, exc_type: Type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None
93 def acquire(self, blocking: bool = ..., timeout: float = ...) -> bool: ...
94 def release(self) -> None: ...
95 def wait(self, timeout: float | None = ...) -> bool: ...
96 def wait_for(self, predicate: Callable[[], _T], timeout: float | None = ...) -> _T: ...
97 def notify(self, n: int = ...) -> None: ...
98 def notify_all(self) -> None: ...
99 def notifyAll(self) -> None: ...
102 def __init__(self, value: int = ...) -> None: ...
104 self, exc_type: Type[BaseException] | None, exc_val: BaseException | None, exc_tb: TracebackType | None
105 ) -> bool | None: ...
106 def acquire(self, blocking: bool = ..., timeout: float | None = ...) -> bool: ...
107 def __enter__(self, blocking: bool = ..., timeout: float | None = ...) -> bool: ...
108 if sys.version_info >= (3, 9):
109 def release(self, n: int = ...) -> None: ...
111 def release(self) -> None: ...
113 class BoundedSemaphore(Semaphore): ...
116 def __init__(self) -> None: ...
117 def is_set(self) -> bool: ...
118 def set(self) -> None: ...
119 def clear(self) -> None: ...
120 def wait(self, timeout: float | None = ...) -> bool: ...
122 if sys.version_info >= (3, 8):
123 from _thread import _excepthook, _ExceptHookArgs
125 excepthook = _excepthook
126 ExceptHookArgs = _ExceptHookArgs
132 function: Callable[..., Any],
133 args: Iterable[Any] | None = ...,
134 kwargs: Mapping[str, Any] | None = ...,
136 def cancel(self) -> None: ...
142 def __init__(self, parties: int, action: Callable[[], None] | None = ..., timeout: float | None = ...) -> None: ...
143 def wait(self, timeout: float | None = ...) -> int: ...
144 def reset(self) -> None: ...
145 def abort(self) -> None: ...
147 class BrokenBarrierError(RuntimeError): ...