微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

发送信号到后台进程

我应该将哪个信号发送到后台进程以将其移至前台? SIGTTIN,SIGTOU还是…?

信号问题,定时器(SIGEV_SIGNAL)

日志旋转Nginx在Windows上

在内核空间中执行的进程如何知道意外(asynchronous)事件的发生?

如何保证清理代码在Windows C ++(SIGINT,错误的分配和closures的窗口)中运行

Linux阻塞信号到Python初始化

gurudoglu。 我想你的请求的回应是在这里

http://en.wikipedia.org/wiki/SIGCONT

http://en.wikipedia.org/wiki/SIGTTIN

http://en.wikipedia.org/wiki/SIGTTOU

这不是直接控制作业是前景还是背景的信号。 这些工作是在shell(通常)的控制之下。

例如,在bash下,如果你执行:

pax> sleep 3600 & pax> jobs

你会看到如下输出

[1]+ Running sleep 3600 &

然后,您可以使用以下方法将该作业带回前台

pax> fg %1 sleep 3600

(和终端等待)。

使用CTRL Z 确实发送一个信号给进程( SIGSTOP ),并把它放到后台,但唯一可以改变的信号是SIGCONT (继续):

pax> fg %1 sleep 3600 ^Z [1]+ Stopped sleep 3600 pax> jobs [1]+ Stopped sleep 3600 pax> kill -CONT %1 pax> jobs [1]+ Running sleep 3600 &

这将指示进程再次开始运行,但不会将其带入前台。 为此,您需要fg命令。

最好是考虑信号(影响进程)和前台/后台(通过确定是否等待进程来影响启动进程的shell)。

没有办法(在我知道的任何操作系统中)使用一个信号来把一个进程带到前台

我相信你只能使用fg把一个进程带到前台

前台只是在控制台的上下文中相关,并且信号不能告诉进程什么控制台前台

假设你在Unix上,并从shell启动了这个进程,你可以输入以下内容

停止进程:: ^ Z

将进程移至背景:: bg

回到前景:: fg

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐