summaryrefslogtreecommitdiff
path: root/gnuradio-core/src/lib/runtime
diff options
context:
space:
mode:
authoreb2009-03-25 22:29:21 +0000
committereb2009-03-25 22:29:21 +0000
commitd0dc3ffdc43630abd1cf800cb6f3b9195770fd4d (patch)
treeb24c03d0d5b162c2a6f72403283bf6ad18ecd908 /gnuradio-core/src/lib/runtime
parentecc7cd7f1f7b2e446c87e21d2023f197e8ed41e2 (diff)
downloadgnuradio-d0dc3ffdc43630abd1cf800cb6f3b9195770fd4d.tar.gz
gnuradio-d0dc3ffdc43630abd1cf800cb6f3b9195770fd4d.tar.bz2
gnuradio-d0dc3ffdc43630abd1cf800cb6f3b9195770fd4d.zip
Add check for interruption to gr_tpb_thread_body to ensure that
threads stop quickly. git-svn-id: http://gnuradio.org/svn/gnuradio/trunk@10686 221aa14e-8319-0410-a670-987f0aec2ac5
Diffstat (limited to 'gnuradio-core/src/lib/runtime')
-rw-r--r--gnuradio-core/src/lib/runtime/gr_tpb_thread_body.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/gnuradio-core/src/lib/runtime/gr_tpb_thread_body.cc b/gnuradio-core/src/lib/runtime/gr_tpb_thread_body.cc
index f61e17243..e3abf6d84 100644
--- a/gnuradio-core/src/lib/runtime/gr_tpb_thread_body.cc
+++ b/gnuradio-core/src/lib/runtime/gr_tpb_thread_body.cc
@@ -23,6 +23,7 @@
#endif
#include <gr_tpb_thread_body.h>
#include <iostream>
+#include <boost/thread.hpp>
gr_tpb_thread_body::gr_tpb_thread_body(gr_block_sptr block)
: d_exec(block)
@@ -33,6 +34,8 @@ gr_tpb_thread_body::gr_tpb_thread_body(gr_block_sptr block)
gr_block_executor::state s;
while (1){
+ boost::this_thread::interruption_point();
+
d->d_tpb.clear_changed();
s = d_exec.run_one_iteration();