perl6: Proc::Async (new)
Posted perl6
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了perl6: Proc::Async (new)相关的知识,希望对你有一定的参考价值。
# command with arguments
my $proc = Proc::Async.new(‘whoami‘);
# subscribe to new output from out and err handles:
$proc.stdout.tap(-> $v { print "Username: $v" }, quit => { say ‘caught exception ‘ ~ .^name });
#$proc.stderr.tap(-> $v { print "Error: $v" });
#stdout可以定制输出内容格式, 默认情况下当.start后也会输出
say "Starting...";
my $promise = $proc.start;
#
# wait for the external program to terminate
await $promise;
#await 子例程等待一个 promise。
#如果那个 promise 是被 保留 的, await 会获取到返回值。
#如果那个 promise 是被 破坏 的, await 会获取到抛出异常。
#kept就会执行上面的stdout
#broken就会执行stderr
#quit是设置异常后的输出
say "Done.";
以上是关于perl6: Proc::Async (new)的主要内容,如果未能解决你的问题,请参考以下文章