【发布时间】:2014-03-04 03:05:59
【问题描述】:
我正在通过system 调用调用“从属”perl 脚本的“主”脚本中创建 Perl 线程。如果这很糟糕,请随时启发我。有时被调用的从脚本会失败并且die。如何在主脚本中知道这一点,以便我可以杀死主?
有没有办法可以向主线程返回一条消息,指示从属线程已正确完成?我知道在线程中使用 exit 并不是一个好习惯。请帮忙。
================================================ ==================================== 编辑:
为了澄清,我有大约 8 个线程,每个线程运行一次。它们之间存在依赖关系,因此我设置了阻止某些线程在初始线程完成之前运行的障碍。
系统调用也是使用tee 完成的,因此这可能是难以获得返回值的部分原因。system("((" . $cmd . " 2>&1 1>&3 | tee -a $error_log) 3>&1) > $log; echo done | tee -a $log"
【问题讨论】:
标签: multithreading perl