spawn

AuthorJane Street Group, LLC <opensource@janestreet.com>
LicenseApache-2.0
Homepagehttps://github.com/janestreet/spawn
Issue Trackerhttps://github.com/janestreet/spawn/issues
Maintaineropensource@janestreet.com
Dependencies
jbuilder>= 1.0+beta18.1
Availableocaml-version >= "4.02.3"
PublishedApr 25, 2018
Source [http] https://github.com/janestreet/spawn/releases/download/v0.12.0/spawn-v0.12.0.tbz
f9c770cbe3856e6ed5b92ba3ce7c691c
StatisticsInstalled 1029 times last month.
Edithttps://github.com/ocaml/opam-repository/tree/master/packages/spawn/spawn.v0.12.0/opam

Spawning sub-processes

Spawn is a small library exposing only one functionality: spawning sub-process.

It has three main goals:

  1. provide missing features of Unix.create_process such as providing a working directory

  2. provide better errors when a system call fails in the sub-process. For instance if a command is not found, you get a proper [Unix.Unix_error] exception

  3. improve performances by using vfork when available. It is often claimed that nowadays fork is as fast as vfork, however in practice fork takes time proportional to the process memory while vfork is constant time. In application using a lot of memory, vfork can be thousands of times faster than fork.

Necessary for
bun
>= 0.3.2
core
>= v0.11.1
shexp
>= v0.11.1