pub fn spawn_async_with_pipes<P, T, U, V>(
    working_directory: P,
    argv: &[&Path],
    envp: &[&Path],
    flags: SpawnFlags,
    child_setup: Option<Box<dyn FnOnce() + 'static, Global>>
) -> Result<(Pid, T, U, V), Error>where
    P: AsRef<Path>,
    T: FromRawFd,
    U: FromRawFd,
    V: FromRawFd,