massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / coc-python-data / languageServer.0.5.59 / Typeshed / stdlib / 3 / multiprocessing / synchronize.pyi
1 from typing import Callable, ContextManager, Optional, Union\r
2 \r
3 from multiprocessing.context import BaseContext\r
4 import threading\r
5 import sys\r
6 \r
7 _LockLike = Union[Lock, RLock]\r
8 \r
9 class Barrier(threading.Barrier):\r
10     def __init__(self,\r
11                  parties: int,\r
12                  action: Optional[Callable] = ...,\r
13                  timeout: Optional[float] = ...,\r
14                  *\r
15                  ctx: BaseContext) -> None: ...\r
16 \r
17 class BoundedSemaphore(Semaphore):\r
18     def __init__(self, value: int = ..., *, ctx: BaseContext) -> None: ...\r
19 \r
20 class Condition(ContextManager[bool]):\r
21     def __init__(self,\r
22                  lock: Optional[_LockLike] = ...,\r
23                  *,\r
24                  ctx: BaseContext) -> None: ...\r
25     if sys.version_info >= (3, 7):\r
26         def notify(self, n: int = ...) -> None: ...\r
27     else:\r
28         def notify(self) -> None: ...\r
29     def notify_all(self) -> None: ...\r
30     def wait(self, timeout: Optional[float] = ...) -> bool: ...\r
31     def wait_for(self,\r
32                  predicate: Callable[[], bool],\r
33                  timeout: Optional[float] = ...) -> bool: ...\r
34     def acquire(self,\r
35                 block: bool = ...,\r
36                 timeout: Optional[float] = ...) -> bool: ...\r
37     def release(self) -> None: ...\r
38 \r
39 class Event(ContextManager[bool]):\r
40     def __init__(self,\r
41                  lock: Optional[_LockLike] = ...,\r
42                  *,\r
43                  ctx: BaseContext) -> None: ...\r
44     def is_set(self) -> bool: ...\r
45     def set(self) -> None: ...\r
46     def clear(self) -> None: ...\r
47     def wait(self, timeout: Optional[float] = ...) -> bool: ...\r
48 \r
49 class Lock(SemLock):\r
50     def __init__(self, *, ctx: BaseContext) -> None: ...\r
51 \r
52 class RLock(SemLock):\r
53     def __init__(self, *, ctx: BaseContext) -> None: ...\r
54 \r
55 class Semaphore(SemLock):\r
56     def __init__(self, value: int = ..., *, ctx: BaseContext) -> None: ...\r
57 \r
58 # Not part of public API\r
59 class SemLock(ContextManager[bool]):\r
60     def acquire(self,\r
61                 block: bool = ...,\r
62                 timeout: Optional[float] = ...) -> bool: ...\r
63     def release(self) -> None: ...\r