add CPU load limiter

git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@176 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
Lennart Poettering 2004-09-03 20:14:23 +00:00
parent c73a298f88
commit 4a9239f808
10 changed files with 392 additions and 40 deletions

View file

@ -223,16 +223,23 @@ void pa_raise_priority(void) {
fprintf(stderr, __FILE__": setpriority() failed: %s\n", strerror(errno));
else
fprintf(stderr, __FILE__": Successfully gained nice level %i.\n", NICE_LEVEL);
#ifdef _POSIX_PRIORITY_SCHEDULING
{
struct sched_param sp;
sched_getparam(0, &sp);
if (sched_getparam(0, &sp) < 0) {
fprintf(stderr, __FILE__": sched_getparam() failed: %s\n", strerror(errno));
return;
}
sp.sched_priority = 1;
if (sched_setscheduler(0, SCHED_FIFO, &sp) < 0)
if (sched_setscheduler(0, SCHED_FIFO, &sp) < 0) {
fprintf(stderr, __FILE__": sched_setscheduler() failed: %s\n", strerror(errno));
else
fprintf(stderr, __FILE__": Successfully gained SCHED_FIFO scheduling.\n");
return;
}
fprintf(stderr, __FILE__": Successfully enabled SCHED_FIFO scheduling.\n");
}
#endif
}