gpt4 book ai didi

java - 线程转储 Java SE 计划应用程序卡住问题

转载 作者:行者123 更新时间:2023-12-01 12:03:30 28 4
gpt4 key购买 nike

我有在 Windows 服务器上运行的 java SE jar 文件。应用程序处理一些记录并将记录提交到数据库上,为此我正在使用 ORM toll eclipselink。应用程序计划定期运行。我面临的问题是应用程序在运行一两天后卡住并且处理停止。以下是应用程序卡住时的完整线程转储。如果有人能读到那个转储并帮助我。

Full thread dump Java HotSpot(TM) Client VM (23.25-b01 mixed mode, sharing):
"DestroyJavaVM" prio=6 tid=0x0095b000 nid=0x5ce8 waiting on condition [0x00000000]
java.lang.Thread.State: RUNNABLE
"pool-1-thread-1" prio=6 tid=0x049a4800 nid=0x5a1c runnable [0x041ae000]
java.lang.Thread.State: RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at oracle.net.ns.Packet.receive(Unknown Source)
at oracle.net.ns.NSProtocol.connect(Unknown Source)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:706)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:228)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:361)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:151)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:595)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at org.eclipse.persistence.sessions.DefaultConnector.connect(DefaultConnector.java:98)
at org.eclipse.persistence.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:162)
at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:579)
at org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:228)
at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:380)
- locked <0x24306260> (a org.eclipse.persistence.sessions.server.ServerSession)
at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:157)
- locked <0x24390e88> (a org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl)
at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:214)
at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:202)
at com.warid.bs.posttoprebalanceshare.PostToPreBalnaceShareTask.run(PostToPreBalnaceShareTask.java:50)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(Unknown Source)
at java.util.concurrent.FutureTask.runAndReset(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"Service Thread" daemon prio=6 tid=0x01fb8400 nid=0x386c runnable [0x00000000]
java.lang.Thread.State: RUNNABLE

"C1 CompilerThread0" daemon prio=10 tid=0x01fb3800 nid=0x37e4 waiting on condition [0x00000000]
java.lang.Thread.State: RUNNABLE

"Attach Listener" daemon prio=10 tid=0x01fb2c00 nid=0x5f30 runnable [0x00000000]
java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=10 tid=0x01fa8000 nid=0x748 waiting on condition [0x00000000]
java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=8 tid=0x01f93800 nid=0x15b4 in Object.wait() [0x0445f000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x296ccd30> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
- locked <0x296ccd30> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)

"Reference Handler" daemon prio=10 tid=0x01f92000 nid=0x296c in Object.wait() [0x042ef000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x296cc8f8> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:503)
at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)
- locked <0x296cc8f8> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=10 tid=0x01f90c00 nid=0x3210 runnable

"VM Periodic Task Thread" prio=10 tid=0x01fd2c00 nid=0x5d78 waiting on condition

JNI global references: 301

Heap
def new generation total 33984K, used 5349K [0x24170000, 0x26640000, 0x296c0000)
eden space 30272K, 8% used [0x24170000, 0x243d0ad8, 0x25f00000)
from space 3712K, 78% used [0x262a0000, 0x26578990, 0x26640000)
to space 3712K, 0% used [0x25f00000, 0x25f00000, 0x262a0000)
tenured generation total 75280K, used 50183K [0x296c0000, 0x2e044000, 0x34170000)
the space 75280K, 66% used [0x296c0000, 0x2c7c1c18, 0x2c7c1e00, 0x2e044000)
compacting perm gen total 12288K, used 10668K [0x34170000, 0x34d70000, 0x38170000)
the space 12288K, 86% used [0x34170000, 0x34bdb1a8, 0x34bdb200, 0x34d70000)
ro space 10240K, 42% used [0x38170000, 0x385b4240, 0x385b4400, 0x38b70000)
rw space 12288K, 54% used [0x38b70000, 0x391f4d58, 0x391f4e00, 0x39770000)

最佳答案

您的应用程序中没有任何内容被卡住。您的应用程序线程pool-1-thread-1实际上正忙于查询您的数据库:

java.lang.Thread.State: RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(Unknown Source)
at java.net.SocketInputStream.read(Unknown Source)
at oracle.net.ns.Packet.receive(Unknown Source)
at oracle.net.ns.NSProtocol.connect(Unknown Source)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:706)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:228)

我宁愿检查你的数据库。

关于java - 线程转储 Java SE 计划应用程序卡住问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27843424/

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