首页 > 其他 > 详细

perl6: Proc::Async (new)

时间:2018-06-26 10:41:15      阅读:204      评论:0      收藏:0      [点我收藏+]

# 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)

原文:https://www.cnblogs.com/perl6/p/9227201.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!