Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #35853

Re: Interrupt code while running (from Form)

From Nigel Wade <nmw@local.domain>
Newsgroups comp.lang.java.programmer
Subject Re: Interrupt code while running (from Form)
Date 2016-10-20 17:49 +0100
Message-ID <e6satdFps6iU1@mid.individual.net> (permalink)
References <6628a02c-9c5a-4cdc-8113-fcf13c972ea4@googlegroups.com> <17cd471e-65d9-47ed-b616-be748efd8fec@googlegroups.com> <e6s4itFob35U1@mid.individual.net> <191335d2-ae49-4ab0-b502-1d71d62b6bc0@googlegroups.com>

Show all headers | View raw


On 20/10/16 16:47, Eric Douglas wrote:
> On Thursday, October 20, 2016 at 11:02:02 AM UTC-4, Nigel Wade wrote:
>> To perform background tasks in a Swing application it's preferable to use a SwingWorker. It takes care of worker thread management for you so you shouldn't get problems like this (the worker threads are daemons). It also has other advantages if any UI feedback is required.
>
> I'm not sure what you mean by the thread management.

Thread management is the bit you've got wrong if you need to resort to jvisualvm to see why your program didn't finish.
You've failed to manage the lifecycle of your threads, and some are still running, preventing the JVM from exiting cleanly.

> As far as I know the SwingWorker should only be necessary if you are running something in a daemon thread that is going to need access to GUI.
>

It's [almost] necessary when doing that, but there's no reason you can't use it for any other background tasks in a Swing GUI application.
The lifecycle methods in SwingWorker integrate very well with an event driven GUI. Otherwise you have to do everything manually, and if you get it wrong you end up messing with jvisualvm, or TaskManger or Ctrl-C to end your errant process/threads.

Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Interrupt code while running (from Form) jkl <euclidalgorithm@gmail.com> - 2016-10-20 01:44 -0700
  Re: Interrupt code while running (from Form) Nigel Wade <nmw@local.domain> - 2016-10-20 10:33 +0100
  Re: Interrupt code while running (from Form) Eric Douglas <e.d.programmer@gmail.com> - 2016-10-20 05:27 -0700
    Re: Interrupt code while running (from Form) Nigel Wade <nmw@local.domain> - 2016-10-20 16:01 +0100
      Re: Interrupt code while running (from Form) Eric Douglas <e.d.programmer@gmail.com> - 2016-10-20 08:47 -0700
        Re: Interrupt code while running (from Form) Nigel Wade <nmw@local.domain> - 2016-10-20 17:49 +0100
          Re: Interrupt code while running (from Form) Eric Douglas <e.d.programmer@gmail.com> - 2016-10-20 10:17 -0700
            Re: Interrupt code while running (from Form) Nigel Wade <nmw@local.domain> - 2016-10-21 15:38 +0100
              Re: Interrupt code while running (from Form) Nigel Wade <nmw@local.domain> - 2016-10-21 16:38 +0100
        Re: Interrupt code while running (from Form) lewbloch@gmail.com - 2016-10-22 16:18 -0700

csiph-web