In Proc::Async§
See primary documentation in context for method close-stdin
method close-stdin(Proc::Async: --> True)
Closes the standard input stream of the external program. Programs that read from STDIN often only terminate when their input stream is closed. So if waiting for the promise from .start
hangs (for a program opened for writing), it might be a forgotten close-stdin
.
The Proc::Async
object must be created for writing (with Proc::Async.new(:w, $path, @args)
). Otherwise an X::Proc::Async::OpenForWriting
exception will the thrown.
start
must have been called before calling method close-stdin, otherwise an X::Proc::Async::MustBeStarted
exception is thrown.