Changeset aa47b1621816c96eff4d6c7edb7b4859192013a4

Show
Ignore:
Timestamp:
06/06/08 16:48:48 (4 months ago)
Author:
Rémi Denis-Courmont <rdenis@simphalempin.com>
git-committer:
Rémi Denis-Courmont <rdenis@simphalempin.com> 1212763728 +0300
git-parent:

[33c8a14f95a2c378b1f374ff3e2d3e669d4992a3]

git-author:
Rémi Denis-Courmont <rdenis@simphalempin.com> 1212763728 +0300
Message:

Rescale POSIX realtime priorities within a portable range

POSIX warrants at least 32 priorities from
sched_get_priority_min(SCHED_RR) to sched_get_priority_max(SCHED_RR).
We were previously relying on 41 priorities, from 0 to 40.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • include/vlc_threads.h

    ra93015e raa47b16  
    7979 
    8080#elif defined(LIBVLC_USE_PTHREAD) 
    81 #   define VLC_THREAD_PRIORITY_LOW
    82 #   define VLC_THREAD_PRIORITY_INPUT 2
    83 #   define VLC_THREAD_PRIORITY_AUDIO 10 
    84 #   define VLC_THREAD_PRIORITY_VIDEO
    85 #   define VLC_THREAD_PRIORITY_OUTPUT 30 
    86 #   define VLC_THREAD_PRIORITY_HIGHEST 4
     81#   define VLC_THREAD_PRIORITY_LOW      
     82#   define VLC_THREAD_PRIORITY_INPUT   1
     83#   define VLC_THREAD_PRIORITY_AUDIO    5 
     84#   define VLC_THREAD_PRIORITY_VIDEO    
     85#   define VLC_THREAD_PRIORITY_OUTPUT 15 
     86#   define VLC_THREAD_PRIORITY_HIGHEST 2
    8787 
    8888#elif defined(WIN32) || defined(UNDER_CE) 
  • src/misc/threads.c

    r33c8a14 raa47b16  
    4949 
    5050#if defined( LIBVLC_USE_PTHREAD ) 
     51# include <sched.h> 
     52 
    5153static pthread_mutex_t once_mutex = PTHREAD_MUTEX_INITIALIZER; 
    5254#endif 
     
    521523        else 
    522524        { 
    523             struct sched_param param = { .sched_priority = +i_priority, }; 
    524             pthread_attr_setschedpolicy (&attr, SCHED_OTHER); 
     525            struct sched_param param = { .sched_priority = i_priority, }; 
     526 
     527            param.sched_priority += sched_get_priority_min (SCHED_RR); 
     528            pthread_attr_setschedpolicy (&attr, SCHED_RR); 
    525529            pthread_attr_setschedparam (&attr, &param); 
    526530        }