【问题标题】:How can we find out the job ID of a process in C?我们如何在 C 中找出进程的作业 ID?
【发布时间】:2009-10-02 11:40:38
【问题描述】:
  1. shell 是否为所有进程(前台和后台)分配作业 ID?

  2. jobs 命令显示现有的后台作业。我们如何查看前台进程的作业 ID?

  3. 我想使用 C 中的函数(如 getpid())来获取给定进程的 job IDstatus 给定进程的 pid过程。

  4. 作业 ID 的最大值是多少?

【问题讨论】:

  • 如果你说出你想要完成的事情,也许会有所帮助。

标签: c unix shell


【解决方案1】:

作业控制是一种外壳功能,而不是操作系统级别的功能,例如进程。

  1. 在调用作业控制时分配作业标识符,例如使用挂起字符(通常为 Ctrl-Z)或在命令行末尾发出 & 和号。

  2. 仅当您挂起前台进程时,它才会获得作业 ID。挂起时,shell 会为您输出作业 ID。

  3. 你不能,因为你不再在 shell 中工作了。

  4. 我怀疑您在用完作业 ID 之前先用完了其他资源。

【讨论】:

    【解决方案2】:

    Job id 与进程和父进程 id 不同。上面的定义对job id解释的不是很清楚

    【讨论】:

      猜你喜欢
      • 2017-05-11
      • 2018-03-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-28
      • 1970-01-01
      相关资源
      最近更新 更多