This commit is contained in:
Simon Wörner
2017-04-03 18:53:16 +02:00
parent 64558495b1
commit c112baa562
2 changed files with 30 additions and 31 deletions

View File

@@ -5,12 +5,20 @@ use std::time::Duration;
const CLOCK_MONOTONIC: i32 = 1;
#[cfg(target_os = "linux")]
fn clock_nanosleep(clk_id: libc::clockid_t, flags: libc::c_int, rqtp: *const libc::timespec, rmtp: *mut libc::timespec) -> libc::c_int {
fn clock_nanosleep(clk_id: libc::clockid_t,
flags: libc::c_int,
rqtp: *const libc::timespec,
rmtp: *mut libc::timespec)
-> libc::c_int {
unsafe { libc::clock_nanosleep(clk_id, flags, rqtp as *const _, rmtp as *mut _) }
}
#[cfg(target_os = "macos")]
fn clock_nanosleep(_clk_id: libc::c_int, _flags: libc::c_int, rqtp: *const libc::timespec, rmtp: *mut libc::timespec) -> libc::c_int {
fn clock_nanosleep(_clk_id: libc::c_int,
_flags: libc::c_int,
rqtp: *const libc::timespec,
rmtp: *mut libc::timespec)
-> libc::c_int {
unsafe { libc::nanosleep(rqtp as *const _, rmtp as *mut _) }
}
@@ -43,9 +51,7 @@ fn timespec_to_duration(timespec: libc::timespec) -> Duration {
#[cfg(target_os = "linux")]
pub fn set_scheduler(policy: i32, priority: i32) -> libc::c_int {
let pid: libc::pid_t = 0;
let param = libc::sched_param {
sched_priority: priority
};
let param = libc::sched_param { sched_priority: priority };
unsafe { libc::sched_setscheduler(pid as libc::pid_t, policy as libc::c_int, &param) }
}