我试图了解org.xnio.nio.WorkerThread
是如何工作的。正如我所看到的,它被org.xnio.nio.NioXnioWorker
扩展并覆盖了将Runnable
"放入"taskPooljava.util.concurrent.Executor#execute
。但是在调试 Spring Web 通量应用期间,org.xnio.XnioWorker#execute
不会调用,并且看起来此池未使用。(内部使用Thread#run with queue polling
)。
有人能说出org.xnio.XnioWorker.TaskPool
的目的是什么,以及在什么条件下Undertow
服务器Runnable
这个池提供任务吗?
只要你阻塞了IO,它就会在工作线程上运行。这是在调用调度时完成的,并且有一个帮助程序处理程序可以为您执行阻止处理程序。