Files
typeshed/stdlib/multiprocessing/heap.pyi
Kevin Kirsche fe1e3ef91b Add multiprocessing.heap submodule (#8412)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2022-07-28 16:27:25 +01:00

37 lines
1.0 KiB
Python

import sys
from _typeshed import Incomplete
from collections.abc import Callable
from mmap import mmap
from typing import Protocol
from typing_extensions import TypeAlias
__all__ = ["BufferWrapper"]
class Arena:
size: int
buffer: mmap
if sys.platform == "win32":
name: str
def __init__(self, size: int) -> None: ...
else:
fd: int
def __init__(self, size: int, fd: int = ...) -> None: ...
_Block: TypeAlias = tuple[Arena, int, int]
if sys.platform != "win32":
class _SupportsDetach(Protocol):
def detach(self) -> int: ...
def reduce_arena(a: Arena) -> tuple[Callable[[int, _SupportsDetach], Arena], tuple[int, Incomplete]]: ...
def rebuild_arena(size: int, dupfd: _SupportsDetach) -> Arena: ...
class Heap:
def __init__(self, size: int = ...) -> None: ...
def free(self, block: _Block) -> None: ...
def malloc(self, size: int) -> _Block: ...
class BufferWrapper:
def __init__(self, size: int) -> None: ...
def create_memoryview(self) -> memoryview: ...