sgolemon/async-process

Asynchronous execution wrappers.

dev-master 2016-05-26 19:54 UTC

This package is not auto-updated.

Last update: 2024-12-21 19:37:21 UTC


README

===== Awaitable Process

Basic Usage:

use sgolemon\Async;
use HH\Asio;

async function swapCase(string $str): Awaitable<?string> {
  $proc = new Async\Process('tr', 'a-zA-Z', 'A-Za-z');
  await $proc->run();

  // Will yield control to other awaitables if writing requires blocking
  await $proc->writeStdin($str);
  $proc->closeStdin();

  // Yield control while reading off result of command execution.
  return await $proc->drainStdout();
}

$hELLO = Asio\join(swapCase("Hello"));