OSX上的SIGTTOU / SIGTTIN调用tcsetpgrp()

时间:2014-02-08 23:22:01

标签: c macos shell operating-system darwin

我正在编写一个基本的shell来作为一个类赋值,它在linux上工作正常,但是当子进程在OSX上退出时,我遇到了重新获取终端控制的问题。

我试过调用tcsetpgrp(STDERR_FILENO,getpgrp());但它被SIGTTIN和SIGTTOU打断了。如果忽略这些信号,则终端无法读取或写入。

感谢。

1 个答案:

答案 0 :(得分:0)

解决。问题不太好。

答案是,我需要将孩子放在自己的流程组中,并使其成为会话的领导者。