2008-10-25 44 views

回答

7

我在IBM developerWorks上找到关于此的文章。当OS发出信号到JVM,信号调度线程将信号传递到相应的处理

Revelations on Java signal handling and termination 由克里斯·怀特,软件工程师,IBM

+0

该链接已损坏,似乎已转录此处:http://blog.intelligencecomputing.io/twitter/2348/revelations-on-java-signal-handling-and-termination – conorgriffin 2016-08-30 10:08:30

4

OS的信号本质上是单线程的,所以它的重要的是他们都在同一个线程上处理。所以,调度员是实现这一目标的一种自然方式。把它想象成AWT的单个GUI事件线程。

请注意,如果您是Linux,并且您的JVM加载了插入自己的信号处理程序的本机库,则需要预加载libjsig.so。当第三方网络库间歇性地撕毁我与错误导向sigpipes的连接时,我发现了困难的方式。