Mercurial > octave-nkf
diff gui/src/backend/OctaveLink.cpp @ 13677:f27573828e92
Properly implemented shutdown of callback thread.
author | Jacob Dawid <jacob.dawid@googlemail.com> |
---|---|
date | Sun, 25 Sep 2011 18:29:24 +0200 |
parents | c0e66d6e3dc8 |
children | ee7f4294d162 |
line wrap: on
line diff
--- a/gui/src/backend/OctaveLink.cpp Sun Sep 25 11:48:47 2011 +0200 +++ b/gui/src/backend/OctaveLink.cpp Sun Sep 25 18:29:24 2011 +0200 @@ -91,17 +91,21 @@ void OctaveLink::launchOctave () { + // Create both threads. m_octaveMainThread = new OctaveMainThread (this); - m_octaveMainThread->start (); + m_octaveCallbackThread = new OctaveCallbackThread (this); - m_octaveCallbackThread = new OctaveCallbackThread (this); + // Launch the second as soon as the first ist ready. connect (m_octaveMainThread, SIGNAL(ready()), m_octaveCallbackThread, SLOT(start())); + + // Start the first one. + m_octaveMainThread->start (); } void OctaveLink::terminateOctave () { - m_octaveCallbackThread->terminate (); + m_octaveCallbackThread->halt(); m_octaveCallbackThread->wait (); m_octaveMainThread->terminate ();