thread-dump

How do I make a thread dump with MONO?

Deadly 提交于 2019-11-30 11:05:57
How can I show the threads (stacktraces) in a hanging application that run with MONO? I know that I can do it in .NET with the Managed Stack Explorer (MSE). Because the application hang only with MONO that I need to do it with MONO. Or there are any other ideas how I can find the place of hanging? Mikayla Hutchinson Assuming you're on Linux/Unix, not Windows, send a SIGQUIT signal to your program. This can be done with kill -QUIT $PID where $PID is the pid of your program. Mono will then dump stack traces of all threads to stdout. Note that although the process stays running after this, you

How do I make a thread dump with MONO?

谁说胖子不能爱 提交于 2019-11-29 16:39:21
问题 How can I show the threads (stacktraces) in a hanging application that run with MONO? I know that I can do it in .NET with the Managed Stack Explorer (MSE). Because the application hang only with MONO that I need to do it with MONO. Or there are any other ideas how I can find the place of hanging? 回答1: Assuming you're on Linux/Unix, not Windows, send a SIGQUIT signal to your program. This can be done with kill -QUIT $PID where $PID is the pid of your program. Mono will then dump stack traces

Fatal error crashing on latest version of Java on Windows 10 machine

谁都会走 提交于 2019-11-29 10:06:46
A customer is seeing this error on Windows 10 Build 1703 machine, I'm not getting it They got this with Java 1.8.0_111-b14) EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000076fd6adf, pid=3164, tid=0x00000000000027d4 I got them to update to the latest version 1.8.0_131-b11 and they still the same error. at least the pc part is the same error. I assume the error is specific to their machine, I have now found some similar issues but with no resolutions. https://bugs.openjdk.java.net/browse/JDK-8178846?jql=text%20~%20%22msvcr100.dll%2B0x36adf%22 --------------- S Y S T E M ---------------

Taking thread dumps in production

泪湿孤枕 提交于 2019-11-28 17:17:09
I am analyzing the differences between approaches for taking thread dumps. Below are the couple of them I am researching on Defining a jmx bean which triggers jstack through Runtime.exec() on clicking a declared bean operation. Daemon thread executing "ManagementFactory.getThreadMXBean().dumpAllThreads(true, true)" repeatedly after a predefined interval. Comparing the thread dump outputs between the two, I see the below disadvantages with approach 2 Thread dumps logged with approach 2 cannot be parsed by open source thread dump analyzers like TDA The ouput does not include the native thread id

Which method is the least obtrusive for generating thread dumps in java?

本小妞迷上赌 提交于 2019-11-28 11:30:48
I am aware of the following methods for generating thread dumps in java: kill -3 jstack JMX from inside the JVM JMX remote JPDA (remote) JVMTI (C API) Of these methods, which is the least detrimental to the JVM's performance? If you just need to dump all stack traces to stdout , kill -3 and jstack should be the cheapest. The functionality is implemented natively in JVM code. No intermediate structures are created - the VM prints everything itself while it walks through the stacks. Both commands perform the same VM operation except that signal handler prints stack traces locally to stdout of

How to debug Java OutOfMemory exceptions?

佐手、 提交于 2019-11-28 06:33:43
What is the best way to debug java.lang.OutOfMemoryError exceptions? When this happens to our application, our app server (Weblogic) generates a heap dump file. Should we use the heap dump file? Should we generate a Java thread dump? What exactly is the difference? Update: What is the best way to generate thread dumps? Is kill -3 (our app runs on Solaris) the best way to kill the app and generate a thread dump? Is there a way to generate the thread dump but not kill the app? Analyzing and fixing out-of-memory errors in Java is very simple. In Java the objects that occupy memory are all linked

jstack: Target process not responding

岁酱吖の 提交于 2019-11-28 04:19:25
I am running Ubuntu server edition and I wanted to take a thread dump of Tomcat. So, I first tried to find out which PID tomcat uses: $ jps -l 5809 sun.tools.jps.Jps But it's not there? So, I used top instead and found out the PID 5730. Then I called jstack to get the thread dump: $ sudo jstack -l 5730 5730: Unable to open socket file: target process not responding or HotSpot VM not loaded The -F option can be used when the target process is not responding What's going on? :-( I already tried to export CATALINA_TMPDIR as described in Jstack and Jstat stopped working with upgrade to JDK6u23 but

Fatal error crashing on latest version of Java on Windows 10 machine

左心房为你撑大大i 提交于 2019-11-28 03:27:53
问题 A customer is seeing this error on Windows 10 Build 1703 machine, I'm not getting it They got this with Java 1.8.0_111-b14) EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000076fd6adf, pid=3164, tid=0x00000000000027d4 I got them to update to the latest version 1.8.0_131-b11 and they still the same error. at least the pc part is the same error. I assume the error is specific to their machine, I have now found some similar issues but with no resolutions. https://bugs.openjdk.java.net

Thread dump programmatically /JDI (Java Debugger Interface)

£可爱£侵袭症+ 提交于 2019-11-27 21:38:36
I like to generate a thread dump programmatically. I've learned that there a basically two ways to do it: Use the "Java Virtual Machine Tool Interface" JVM-TI Use the higher abstracted "Java Debugger Interface" JDI For the JVM-TI I was able to find some useful information, but I would have to write a JNI-DLL which, at least for the moment, I would like to avoid. With the JDI I can use Java and it seems I'm able to use it from within the application. But I wasn't able to find some kind of tutorial or HOWTO for it. The only documentation I could find, were the Java-Docs http://java.sun.com/j2se

Java thread dump: BLOCKED thread without “waiting to lock …”

送分小仙女□ 提交于 2019-11-27 20:08:37
I'm having difficulties in understanding the thread dump I got from jstack for a Spring MVC web application running on Tomcat 6 (java 1.6.0_22, Linux). I see blocking threads (that cause other threads to wait) which are blocked themselves, however the thread dump doesn't tell me why or for which monitor they are waiting. Example: "TP-Processor75" daemon prio=10 tid=0x00007f3e88448800 nid=0x56f5 waiting for monitor entry [0x00000000472bc000] java.lang.Thread.State: BLOCKED (on object monitor) at java.lang.Class.initAnnotationsIfNecessary(Class.java:3067) - locked <0x00007f3e9a0b3830> (a java