diff options
author | Josh Blum <josh@joshknows.com> | 2012-10-29 17:39:32 -0700 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2012-10-29 17:41:05 -0700 |
commit | e3452bf969552abf2497dbd7ac8ed093a3f36de3 (patch) | |
tree | 742eb9cc5aaa66ef5772eb35fa885fdb57848770 /host/lib/transport | |
parent | cd8a998b2f7249916424b969b0aa75489291152b (diff) | |
download | uhd-e3452bf969552abf2497dbd7ac8ed093a3f36de3.tar.gz uhd-e3452bf969552abf2497dbd7ac8ed093a3f36de3.tar.bz2 uhd-e3452bf969552abf2497dbd7ac8ed093a3f36de3.zip |
uhd: added barrier interrupt to work around thread issue
Force the barrier wait to throw a boost::thread_interrupted
The threads were not getting the interruption_point on windows.
Diffstat (limited to 'host/lib/transport')
-rw-r--r-- | host/lib/transport/super_recv_packet_handler.hpp | 2 | ||||
-rw-r--r-- | host/lib/transport/super_send_packet_handler.hpp | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/host/lib/transport/super_recv_packet_handler.hpp b/host/lib/transport/super_recv_packet_handler.hpp index 4b96199e2..7a1972690 100644 --- a/host/lib/transport/super_recv_packet_handler.hpp +++ b/host/lib/transport/super_recv_packet_handler.hpp @@ -79,6 +79,8 @@ public: } ~recv_packet_handler(void){ + _task_barrier_entry.interrupt(); + _task_barrier_exit.interrupt(); _task_handlers.clear(); } diff --git a/host/lib/transport/super_send_packet_handler.hpp b/host/lib/transport/super_send_packet_handler.hpp index 8f943effb..74e893e67 100644 --- a/host/lib/transport/super_send_packet_handler.hpp +++ b/host/lib/transport/super_send_packet_handler.hpp @@ -61,6 +61,8 @@ public: } ~send_packet_handler(void){ + _task_barrier_entry.interrupt(); + _task_barrier_exit.interrupt(); _task_handlers.clear(); } |