def METHOD_NAME(path: str) -> typing.Tuple[typing.BinaryIO, typing.Coroutine]:
    """Create the pipe and the thread.
    Returns the inlet of the pipe and a coroutine can be await for the termination of the thread."""
    pipe_outlet, pipe_inlet = os.pipe2(os.O_CLOEXEC)
    wait_thread = asyncio.to_thread(FileIOWriter._run, path, pipe_outlet)
    return open(pipe_inlet, 'wb'), wait_thread