gpt4 book ai didi

java - 什么会导致 JVM 锁定机器的鼠标点击和键盘输入?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:27:14 25 4
gpt4 key购买 nike

我在 Linux 机器 (RHEL 5) 上运行 Java 6,我的程序偶尔会锁定计算机的输入。没有鼠标点击或键盘敲击起作用。奇怪的是,鼠标光标可以移动并且 CTRL+ALT+F2 命令有效(尽管它不会调出终端)。

使用 topjvisualvm 我没有发现内存泄漏或其他进程问题。但是,解冻计算机的唯一方法是从另一台计算机ssh 并终止 java 进程。这种行为的可能原因是什么?

我偶尔可以通过降低内存上限来重现它。似乎死锁可能在这里:

"Java2D Disposer" daemon prio=10 tid=0xae7d6800 nid=0x4451 in Object.wait() [0xae6ad000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0xb3253070> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
- locked <0xb3253070> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
at sun.java2d.Disposer.run(Disposer.java:127)
at java.lang.Thread.run(Thread.java:662)

最佳答案

在我看来,您描述的症状是未发布的 X11 键盘和指针抓取。这很容易由错误或无响应的 GUI -> X11 层引起。仔细检查您的 GUI 线程。

关于java - 什么会导致 JVM 锁定机器的鼠标点击和键盘输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9841593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com