summaryrefslogtreecommitdiff
path: root/libs/backends
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-09-12 11:29:47 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-09-12 11:29:47 -0400
commit4df3666738607039445ebc9fa083bf5c23ac5539 (patch)
tree3388082f2e73c020edde31796fd977a71cb3abae /libs/backends
parent9f2ab81df6709d7b5d5701abbedc63d39e7330ab (diff)
add AudioBackendNativeThread to serve the same role as jack_native_thread_t
Diffstat (limited to 'libs/backends')
-rw-r--r--libs/backends/jack/jack_audiobackend.cc8
-rw-r--r--libs/backends/jack/jack_audiobackend.h3
2 files changed, 10 insertions, 1 deletions
diff --git a/libs/backends/jack/jack_audiobackend.cc b/libs/backends/jack/jack_audiobackend.cc
index e004849896..89a93a76f6 100644
--- a/libs/backends/jack/jack_audiobackend.cc
+++ b/libs/backends/jack/jack_audiobackend.cc
@@ -789,6 +789,14 @@ JACKAudioBackend::create_process_thread (boost::function<void()> f, pthread_t* t
return 0;
}
+int
+JACKAudioBackend::wait_for_process_thread_exit (AudioBackendNativeThread thr)
+{
+ void* status;
+ /* this doesn't actively try to stop the thread, it just waits till it exits */
+ return pthread_join (thr, &status);
+}
+
void*
JACKAudioBackend::_start_process_thread (void* arg)
{
diff --git a/libs/backends/jack/jack_audiobackend.h b/libs/backends/jack/jack_audiobackend.h
index 1389e15c4a..61f1bbb602 100644
--- a/libs/backends/jack/jack_audiobackend.h
+++ b/libs/backends/jack/jack_audiobackend.h
@@ -100,7 +100,8 @@ class JACKAudioBackend : public AudioBackend {
size_t raw_buffer_size (DataType t);
- int create_process_thread (boost::function<void()> func, pthread_t*, size_t stacksize);
+ int create_process_thread (boost::function<void()> func, AudioBackendNativeThread*, size_t stacksize);
+ int wait_for_process_thread_exit (AudioBackendNativeThread);
void transport_start ();
void transport_stop ();