This is very likely to create a memory leak. Stack trace of thread

逃离我推掉我的手 2022-06-12 08:22 1794阅读 0赞

1、错误描述

  1. 警告: The web application [cmp] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  2. java.lang.Object.wait(Native Method)
  3. java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
  4. com.mysql.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:43)
  5. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  6. 警告: The web application [cmp] appears to have started a thread named [Atomikos:0] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  7. sun.misc.Unsafe.park(Native Method)
  8. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  9. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  10. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  11. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  12. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  13. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  14. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  15. java.lang.Thread.run(Thread.java:745)
  16. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  17. 警告: The web application [cmp] appears to have started a thread named [Atomikos:1] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  18. sun.misc.Unsafe.park(Native Method)
  19. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  20. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  21. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  22. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  23. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  24. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  25. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  26. java.lang.Thread.run(Thread.java:745)
  27. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  28. 警告: The web application [cmp] appears to have started a thread named [Atomikos:2] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  29. sun.misc.Unsafe.park(Native Method)
  30. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  31. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  32. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  33. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  34. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  35. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  36. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  37. java.lang.Thread.run(Thread.java:745)
  38. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  39. 警告: The web application [cmp] appears to have started a thread named [Atomikos:3] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  40. sun.misc.Unsafe.park(Native Method)
  41. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  42. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  43. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  44. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  45. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  46. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  47. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  48. java.lang.Thread.run(Thread.java:745)
  49. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  50. 警告: The web application [cmp] appears to have started a thread named [Atomikos:4] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  51. sun.misc.Unsafe.park(Native Method)
  52. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  53. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  54. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  55. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  56. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  57. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  58. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  59. java.lang.Thread.run(Thread.java:745)
  60. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  61. 警告: The web application [cmp] appears to have started a thread named [Atomikos:5] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  62. sun.misc.Unsafe.park(Native Method)
  63. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  64. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  65. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  66. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  67. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  68. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  69. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  70. java.lang.Thread.run(Thread.java:745)
  71. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  72. 警告: The web application [cmp] appears to have started a thread named [Atomikos:6] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  73. sun.misc.Unsafe.park(Native Method)
  74. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  75. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  76. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  77. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  78. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  79. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  80. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  81. java.lang.Thread.run(Thread.java:745)
  82. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  83. 警告: The web application [cmp] appears to have started a thread named [Atomikos:7] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  84. sun.misc.Unsafe.park(Native Method)
  85. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  86. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  87. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  88. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  89. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  90. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  91. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  92. java.lang.Thread.run(Thread.java:745)
  93. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  94. 警告: The web application [cmp] appears to have started a thread named [Atomikos:8] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  95. sun.misc.Unsafe.park(Native Method)
  96. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  97. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  98. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  99. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  100. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  101. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  102. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  103. java.lang.Thread.run(Thread.java:745)
  104. 七月 17, 2017 2:43:06 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
  105. 警告: The web application [cmp] appears to have started a thread named [Atomikos:9] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
  106. sun.misc.Unsafe.park(Native Method)
  107. java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
  108. java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
  109. java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:362)
  110. java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:941)
  111. java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1066)
  112. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
  113. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  114. java.lang.Thread.run(Thread.java:745)

2、错误原因

  1. 利用Eclipse启动Web项目,控制台打印的警告信息;由信息提示可知,有个线程停止了,可能是内存泄漏导致的

3、解决办法

(1)查找资料,从Tomcat6开始,server.xml里添加了对内存泄漏监听;将监听器注释掉

发表评论

表情:
评论列表 (有 0 条评论,1794人围观)

还没有评论,来说两句吧...

相关阅读