【问题标题】:How to specify a maximum amount of time a program can run in C++如何指定程序可以在 C++ 中运行的最长时间
【发布时间】:2011-04-25 17:53:46
【问题描述】:

在我的 C++ 程序中,我将使用 exec 启动其他程序。但是,我希望能够指定程序可以运行的最长时间。怎么可能?

setrlimit 是否适合使用?

【问题讨论】:

    标签: c++ linux macos


    【解决方案1】:

    有点蛮力版本,但是...保存/获取已启动程序/进程的句柄,启动计时器并在计时器到期后终止另一个进程?

    【讨论】:

    • 使用execv时如何获取句柄?
    【解决方案2】:

    想到的2个解决方案。

    1- 通过命令行将持续时间发送到第二个程序,并在第二个 exe 内部管理持续时间。 2- 在第一个 exe 中创建一个计时器,并在触发计时器时杀死第二个进程。

    最大。

    【讨论】:

    • 当然,第一个版本只有在您自己编写过其他应用程序时才有效。
    【解决方案3】:

    一般来说,使用标准 c++ 无法完成 - 您必须使用您的操作系统(您尚未指定)提供的任何调度功能。

    【讨论】:

    • 我使用的是 OSX,类似于 Linux。
    猜你喜欢
    • 1970-01-01
    • 2011-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-25
    • 2011-06-18
    • 1970-01-01
    相关资源
    最近更新 更多