【问题标题】:Netty Eventloop blocked on `keventWait`Netty Eventloop 在“keventWait”上被阻止
【发布时间】:2021-10-13 02:11:24
【问题描述】:

我在我的程序中使用 netty 的事件循环来 submit 可调用和可运行,有时它们永远不会被执行。当我进行线程转储时,它看起来像这样 -

io.netty.channel.kqueue.Native.keventWait(int, long, int, long, int, int, int)
io.netty.channel.kqueue.Native.keventWait(int, io.netty.channel.kqueue.KQueueEventArray, io.netty.channel.kqueue.KQueueEventArray, int, int) (line: 113)
io.netty.channel.kqueue.KQueueEventLoop.kqueueWait(int, int) (line: 177)
io.netty.channel.kqueue.KQueueEventLoop.kqueueWait(boolean) (line: 169)
io.netty.channel.kqueue.KQueueEventLoop.run() (line: 238)
io.netty.util.concurrent.SingleThreadEventExecutor$4.run() (line: 986)
io.netty.util.internal.ThreadExecutorMap$2.run() (line: 74)
io.netty.util.concurrent.FastThreadLocalRunnable.run() (line: 30)
java.lang.Thread.run() (line: 834)

基本上,netty 一直在等待事件,没有任何超时。处理这种情况的正确方法是什么?

【问题讨论】:

    标签: java performance netty


    【解决方案1】:

    这不应该发生,如果是这样,那就是一个错误。请升级到最新的 netty 版本,如果仍然发生这种情况,请在我们的问题跟踪器上打开一个错误报告,其中包含所有需要的信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-25
      • 2014-04-28
      • 1970-01-01
      • 2016-12-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多