我将从我想要实现的目标开始,然后分享我迄今为止所尝试过的内容。
我有一个我们称之为someProcess的流程。致电
./ someProcess&
我可以创建someProcess的实例并立即将其置于休眠状态。然后,当
调用killall -10 someProcess
,进程将被唤醒并运行直到收到:
killall -12 someProcess
这很好,但目标更复杂。我希望能够创建一些someProcess的睡眠实例。我想同时发送所有实例信号10(尽可能接近同时),5秒后,我想发送所有进程信号12。
我已经尝试了超时,我认为可以通过超时实现这一点,但我无法弄清楚如何。我只能让部分目标情况发挥作用。我可以让所有实例运行5秒钟,并且我可以让所有实例在该持续时间之后接收到一个信号,但我无法弄清楚如何使用超时发送两个延迟分隔的信号。理想情况下,情况看起来像这样:
./ someProccess&
./ someProcess&
./ someProcess&
...
魔法超时命令
// someProcess的所有实例都接收信号10
// 5s传递
// someProcess的所有实例接收信号12
需要使用一个命令完成此操作的原因是我可以复制我的结果。我希望能够在有不同数量的实例时测试someProcess的行为。