标签: c macos shell operating-system darwin
我正在编写一个基本的shell来作为一个类赋值,它在linux上工作正常,但是当子进程在OSX上退出时,我遇到了重新获取终端控制的问题。
我试过调用tcsetpgrp(STDERR_FILENO,getpgrp());但它被SIGTTIN和SIGTTOU打断了。如果忽略这些信号,则终端无法读取或写入。
感谢。
答案 0 :(得分:0)
解决。问题不太好。
答案是,我需要将孩子放在自己的流程组中,并使其成为会话的领导者。