diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2017-04-21 00:07:22 +0200 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2017-04-21 00:07:22 +0200 |
commit | 1810a2c6a34207caedf5a88bc4e5d38080e764ed (patch) | |
tree | b6a6074b8c9ee47881330256dd002f76fb26029b /src/OutputUHD.h | |
parent | 156ee71cbb3c94d5d77a5afcc376cd512ce8fe9d (diff) | |
download | dabmod-1810a2c6a34207caedf5a88bc4e5d38080e764ed.tar.gz dabmod-1810a2c6a34207caedf5a88bc4e5d38080e764ed.tar.bz2 dabmod-1810a2c6a34207caedf5a88bc4e5d38080e764ed.zip |
Put UHD async msg to separate thread
Diffstat (limited to 'src/OutputUHD.h')
-rw-r--r-- | src/OutputUHD.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/OutputUHD.h b/src/OutputUHD.h index cbf159f..d42245f 100644 --- a/src/OutputUHD.h +++ b/src/OutputUHD.h @@ -125,6 +125,8 @@ class UHDWorker { void start(struct UHDWorkerData *uhdworkerdata) { uwd->running = true; uhd_thread = boost::thread(&UHDWorker::process_errhandler, this); + async_rx_thread = boost::thread( + &UHDWorker::print_async_metadata, this); } void stop() { @@ -133,6 +135,7 @@ class UHDWorker { } uhd_thread.interrupt(); uhd_thread.join(); + async_rx_thread.join(); } ~UHDWorker() { @@ -155,13 +158,14 @@ class UHDWorker { // Used to print statistics once a second std::chrono::steady_clock::time_point last_print_time; - void print_async_metadata(const struct UHDWorkerFrameData *frame); + void print_async_metadata(void); void handle_frame(const struct UHDWorkerFrameData *frame); void tx_frame(const struct UHDWorkerFrameData *frame, bool ts_update); struct UHDWorkerData *uwd; boost::thread uhd_thread; + boost::thread async_rx_thread; uhd::tx_streamer::sptr myTxStream; |