Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #35500
| From | Roedy Green <inquiry@mindprod.com> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: How do I terminate a JVM properly? |
| Date | 2016-08-30 16:34 -0700 |
| Organization | Aioe.org NNTP Server |
| Message-ID | <a06csbpdp9gghet0rq7682um2jjepdmp0e@4ax.com> (permalink) |
| References | <dd3f22ed-83df-4f1d-8a4a-180fa6ee12c2@googlegroups.com> <10fc56da-c03f-41a7-93b8-c7eeb6d24279@googlegroups.com> |
On Wed, 24 Aug 2016 14:00:21 -0700 (PDT), Eric Douglas
<e.d.programmer@gmail.com> wrote:
>Appears to be a bug in the JRE? I tried the simplest program,
with all GUI windows disposed, JVM still did not close itself. Only
workaround I can see is checking in the window close event if any
displayable windows exist, if not then call System.exit.
When you think you are done:
call this to find out what threads are still running:
/**
* call just before System.exit( 0 ) to find out if there was more
than one thread.
*/
public static void trackLastThread()
{
final int activeCount = Thread.activeCount();
if ( activeCount <= 1 )
{
return;
}
final Thread[] ta = new Thread[ activeCount ];
Thread.enumerate( ta );
// list just the user threads, not the daemons
int userCount = 0;
for ( Thread t : ta )
{
if ( !t.isDaemon() )
{
userCount++;
}
}
if ( userCount <= 1 )
{
return;
}
for ( Thread t : ta )
{
if ( !t.isDaemon() )
{
out.println( "U S E R T H R E A D" );
out.println( t.toString() + " : " + t.getState() );
final StackTraceElement[] s = t.getStackTrace();
for ( StackTraceElement e : s )
{
out.println( e.toString() );
}
out.println();
}
}
}// /method
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Find similar | Unroll thread
How do I terminate a JVM properly? Eric Douglas <e.d.programmer@gmail.com> - 2016-08-24 08:14 -0700
Re: How do I terminate a JVM properly? Eric Douglas <e.d.programmer@gmail.com> - 2016-08-24 14:00 -0700
Re: How do I terminate a JVM properly? Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-08-24 17:39 -0400
Re: How do I terminate a JVM properly? Eric Douglas <e.d.programmer@gmail.com> - 2016-08-25 05:24 -0700
Re: How do I terminate a JVM properly? Nigel Wade <nmw@local.domain> - 2016-08-25 13:52 +0100
Re: How do I terminate a JVM properly? Eric Douglas <e.d.programmer@gmail.com> - 2016-08-25 06:05 -0700
Re: How do I terminate a JVM properly? Nigel Wade <nmw@local.domain> - 2016-08-25 15:04 +0100
Re: How do I terminate a JVM properly? Eric Douglas <e.d.programmer@gmail.com> - 2016-08-25 08:20 -0700
Re: How do I terminate a JVM properly? Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-08-25 15:55 -0400
Re: How do I terminate a JVM properly? Eric Douglas <e.d.programmer@gmail.com> - 2016-08-25 13:35 -0700
Re: How do I terminate a JVM properly? Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-08-25 16:58 -0400
Re: How do I terminate a JVM properly? Arne Vajhøj <arne@vajhoej.dk> - 2016-08-28 13:29 -0400
Re: How do I terminate a JVM properly? Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-08-28 13:53 -0400
Re: How do I terminate a JVM properly? Arne Vajhøj <arne@vajhoej.dk> - 2016-08-28 14:14 -0400
Re: How do I terminate a JVM properly? Eric Douglas <e.d.programmer@gmail.com> - 2016-08-25 05:52 -0700
Re: How do I terminate a JVM properly? Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-08-24 18:19 -0400
Re: How do I terminate a JVM properly? Lew <lewbloch@gmail.com> - 2016-08-24 16:12 -0700
Re: How do I terminate a JVM properly? Roedy Green <inquiry@mindprod.com> - 2016-08-30 16:34 -0700
csiph-web