Open GoogleCodeExporter opened 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
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
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
Original comment by charliej...@gmail.com
on 27 Aug 2009 at 1:18
Original issue reported on code.google.com by
paul.x.r...@googlemail.com
on 26 Nov 2007 at 8:21