当前位置: 首页 > 面试题库 >

C / C ++进程如何知道它是否在后台运行?

孙永思
2023-03-14
问题内容

我的流程中有一个方法,仅当该流程不在后台时才应运行。如何动态测试当前进程是否在后台?谢谢


问题答案:

查看Unix FAQ:进程如何检测它是否在后台运行?

普遍的答案是:您无法确定您是否在后台运行。

但是您可以检查stdin是否为终端: if(isatty(0)) { ... }



 类似资料:
  • 本文向大家介绍如何在C#中检查线程是否为后台线程,包括了如何在C#中检查线程是否为后台线程的使用技巧和注意事项,需要的朋友参考一下 要检查线程是否是后台线程,代码如下: 示例 输出结果 这将产生以下输出- 示例 让我们看另一个例子- 输出结果 这将产生以下输出-

  • 我正在运行一些应用程序,其中应用程序必须知道它在PODMAN内部运行,没有任何额外的env变量,但容器中的PODMAN配置必须提供细节,而没有任何用户交互。 现在,我正在使用cat容器内部开始使用podman检查进程是否在容器内部。 有没有更好的方法来处理同样的问题?

  • 问题内容: 我想使用ffmpeg在php中将视频转换为.flv。目前,我正在执行此操作,但是它会挂起浏览器,直到文件上传完毕。我一直在寻找有关如何在后台运行exec()进程的php文档,同时使用返回的PID更新进程。这是我发现的: 我还使用一个技巧来跟踪后台任务是否正在使用返回的PID运行: 我是否想创建一个单独的.php文件,然后从php cli运行以执行以下功能之一?我只需要稍微推动一下即可开

  • 我希望测试类知道它们当前是否在套件中执行。我有一个测试套件,它使用外部资源(ExternalResource)在所有测试之前启动服务器,在所有测试之后关闭服务器。效果完美。在编写新测试时,我希望运行一个测试(或全部来自同一个测试类)来启动和停止服务器。所以我想让这些类知道它们当前是否在套件中执行,并相应地启动服务器。这似乎是不可能的。套件描述似乎永远不会传递给规则或类规则。我也无法获得运行当前测试

  • 问题内容: 我想在这里做些奇怪的事情。我需要从一个守护进程启动一个logcat进程,该守护进程将在后台运行并打印到终端,而无需控制stdin。它是用于记录日志的,因此理想情况下logcat将打印日志消息,同时仍允许用户输入标准命令并从Shell初始化程序。这是到目前为止我拥有的守护程序的代码。该程序logcat启动并显示日志消息,但由于该程序已控制了stdin,因此我无法在stdin中输入任何命令

  • 问题内容: 这个问题与编程没有严格关系,但是对于程序员来说肯定是重要的。 我写了一个简单的smtp服务器,当我从控制台运行它时,一切都很好,只是它阻止了命令行。 我知道我可以通过运行它 或通过屏幕/ tmux等 但是问题是,我应该如何实现我的程序在后台运行,并且系统管理员可以很高兴地设置和管理该程序? 有些人比我有更多的经验,在golang- nuts上 写道,他们不使用fork等,而是使用mon