【发布时间】:2010-09-19 03:19:05
【问题描述】:
我正在查看 java 进程的线程转储,并注意到一些线程被信号调度程序阻塞。
什么是信号调度器?它有什么作用?
【问题讨论】:
标签: java multithreading
我正在查看 java 进程的线程转储,并注意到一些线程被信号调度程序阻塞。
什么是信号调度器?它有什么作用?
【问题讨论】:
标签: java multithreading
我在 IBM developerWorks 上找到了一篇关于此的文章。当操作系统向 JVM 发出信号时,信号调度线程会将信号传递给适当的处理程序
Revelations on Java signal handling and termination 作者:Chris White,IBM 软件工程师
【讨论】:
操作系统信号本质上是单线程的,因此它们都在同一个线程上处理很重要。因此,调度程序是实现这一目标的自然方式。可以把它想象成 AWT 的单个 GUI 事件线程。
顺便说一句,如果您是 Linux 并且您的 JVM 加载了一个插入其自己的信号处理程序的本机库,那么您将需要预加载 libjsig.so。当第三方网络库间歇性地断开我与错误定向 sigpipe 的连接时,我发现了一个艰难的过程。
【讨论】: