在我的流程中,我需要启动/重新启动另一个进程。
目前我使用一个堆栈很小的线程和以下代码:
void startAndMonitorA()
{
while(true)
{
system("myProcess");
LOG("myProcess crashed");
usleep(1000 * 1000);
}
}
我觉得这不是最佳实践。我不清楚std::system()
调用正在阻塞或浪费哪些资源。我使用的是嵌入式Linux,所以通常我会关心资源。