C++ 从 'main' 中运行其他程序的最佳实践
C++ best practices for running other programs from within 'main'
所以我有一个短程序,它必须运行其他几个程序并等待它们完成。
目前,我正在我的主方法中执行此操作,如下所示:
// Connect to the service
cout << "Starting the service..." << endl;
status = system((SCRIPT_DIR + "/my_service").c_str());
if (WIFEXITED(status)) {
cout << "Started service successfully" << endl;
} else {
cerr << "Failed to start the service." << endl;
return (EXIT_FAILURE);
}
它看起来有点恶心,因为我必须多次这样做; 这是应该这样做的地方吗? 或者我应该把它分解成一个类或函数,这样我就不会在main中进行所有这些错误检查?
也欢迎任何其他建议!
同步方法是在阻塞函数中启动服务并返回退出值。您一个接一个地启动服务并等待它们完成。
异步:
所有服务都可以并行运行。您可以启动线程并加入它们。因此,当它们完成时,您可以检索退出值。
或者,你可以fork((并使用pipes,让父亲向不同的孩子发出命令(启动不同的程序(
您可以为要运行的每个"其他程序"创建一个线程。但是,仅当每个"其他程序"的作业独立于其他"其他程序"的结果或变量时,这可能才有效
相关文章:
- 程序顶部的声明与定义(最佳实践)
- 将FFMpeg AVFrame对象从C++应用程序流式传输到Python的最佳方法?
- 将数据从一个应用程序单向发送到另一个应用程序的最佳做法
- C++ 从 'main' 中运行其他程序的最佳实践
- 在Visual Studio中编写独立程序的最佳方法是什么?
- 学习如何制作可以处理动画的程序的最佳方式
- 开发C++应用程序,目标服务器有不同的std lib版本,最佳实践是什么
- 拥有用于QT应用程序的Web用户界面的最佳方法
- 要打开以供C++中的应用程序最佳使用的并行套接字/TCP连接数
- 测试使用visual studio编写的C++android应用程序的最佳方法是什么.不升级到windows专业版
- 在java/c++/c/actionscript-3应用程序中使用静态变量的最佳方法是什么?
- 跨平台桌面应用程序的最佳javascript引擎
- 在开源社区中,构建C/C++程序的最佳方式是什么
- 在应用程序中阻止系统关闭的最佳方法是什么
- 在一个程序中处理多个QT Designer UI文件的最佳方法是什么?
- 使用提升程序选项处理 2 级命令的最佳方法
- 控制对多线程程序中字符串对象的访问的最佳方法
- 大数置换nPr的最佳程序
- PHP 脚本与应用程序通信的最佳方法
- 在我的程序中分析 CPU 使用情况的最佳选择