summaryrefslogtreecommitdiffstats
path: root/src/pulsecore/thread-posix.c
diff options
context:
space:
mode:
authorPierre Ossman <ossman@cendio.se>2006-08-31 16:13:07 +0000
committerPierre Ossman <ossman@cendio.se>2006-08-31 16:13:07 +0000
commit6e9706bcbcc0c5743d21ed48bd6e6485e4ee5203 (patch)
tree203fa0d78812507d55762cafefb7da78715e7292 /src/pulsecore/thread-posix.c
parent0f6098bf6428b17bbff2b2d6f4e8ead0d43d7f3a (diff)
Also wrap yield functionality so that it can be platform independent.
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@1353 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src/pulsecore/thread-posix.c')
-rw-r--r--src/pulsecore/thread-posix.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/pulsecore/thread-posix.c b/src/pulsecore/thread-posix.c
index 6ca46d70..4c12ec93 100644
--- a/src/pulsecore/thread-posix.c
+++ b/src/pulsecore/thread-posix.c
@@ -25,6 +25,7 @@
#include <assert.h>
#include <pthread.h>
+#include <sched.h>
#include <atomic_ops.h>
@@ -116,6 +117,14 @@ pa_thread* pa_thread_self(void) {
return pa_tls_get(thread_tls);
}
+void pa_thread_yield(void) {
+#ifdef HAVE_PTHREAD_YIELD
+ pthread_yield();
+#else
+ sched_yield();
+#endif
+}
+
pa_tls* pa_tls_new(pa_free_cb_t free_cb) {
pa_tls *t;