flaxsearch / flaxcode

Automatically exported from code.google.com/p/flaxcode
4 stars 1 forks source link

clean shutdown running from the command line #148

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
At the moment there is no clean way to reliably shutdown all the running
processes when running from the command line on windows. You have to resort
to killing things off with task manager. I'm not exactly sure why - I guess
we're catching exceptions that would otherwise terminate processes.

Original issue reported on code.google.com by paul.x.r...@googlemail.com on 26 Nov 2007 at 8:21

GoogleCodeExporter commented 9 years ago
I think the issue is that when you hit control-c only one process actually 
receives
the keyboard interupt, whereas on linux they all do. When (for example) we stop 
from
the service control app, we know where the stopping code is executing from, and 
we
have a mechanism for ensuring that each process is eventually stopped. 

From the command line only one process gets the interrupt, and there's no 
mechanism
for cleanly killing off the remaining processes. 

Perhaps one way to deal with cleanly shutting down would be to have a "shutdown"
button  somewhere in the web interface, which could invoke stop and join on the
FlaxMain instance.

Original comment by paul.x.r...@googlemail.com on 28 Nov 2007 at 9:28

GoogleCodeExporter commented 9 years ago
That seems a likely explanation.

Actually, on some unices there could be problems too (though I haven't seen them
manifest) - while all processes should get the signal normally, it would be 
better
not to rely on this, and also even if a process gets the signal, it may only be
received in a single thread.

An alternative solution would be to install a signal handler in all our 
processes,
which would set a processing.SharedValue (or similar) to True.  All the 
processes
would periodically check that SharedValue, and would shut down if it was set to 
True.

However, this isn't critical for 1.0, since users shouldn't normally be running 
from
the command line, so lets not worry about this for now.

Original comment by boulton.rj@gmail.com on 28 Nov 2007 at 9:50

GoogleCodeExporter commented 9 years ago
This also now seems to be the case on linux, so I'm not sure about the 
explanation.
Anyway - changing the summary and keywords to reflect cross-platform problem.

Original comment by paul.x.r...@googlemail.com on 28 Nov 2007 at 10:56

GoogleCodeExporter commented 9 years ago

Original comment by charliej...@gmail.com on 27 Aug 2009 at 1:18