我在写我自己的shell。在shell进程中,所有终止信号应该被忽略。如果我没有实现内置的exit
命令,我该如何终止我的shell进程?如何终止所有终止信号被忽略的过程?
我试图强制终端退出。但是,这样做不可能再次打开终端!
OS X的终端:
[Could not create a new process and open a pseudo-tty.]
[forkpty: Resource temporarily unavailable]
[Could not create a new process and open a pseudo-tty.]
的iTerm:
Unable to Fork!
iTerm cannot launch the program for this session.
有人能告诉我这是怎么回事呢?看来,如果我强迫终端退出,一些资源就不会自由;所以下次尝试打开终端时,资源不可用。
没有访问您的代码,我们只能推测。但似乎你有一个相当严重的资源泄漏。当某些事情失败时,您的代码是否积极地重试? – tripleee