summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDavid CARLIER <devnexen@gmail.com>2021-05-08 09:54:43 +0100
committerDavid CARLIER <devnexen@gmail.com>2021-05-08 10:20:26 +0100
commitd619103e28f97bdc7af5d4226dc41f329cc8c0e8 (patch)
treefa6d3a46b2b097027be3dffc32bbd68ddc6bc561 /src
parent7cc1cf300a234507a4856c2c60053de0f3ab858f (diff)
downloadrust-libc-d619103e28f97bdc7af5d4226dc41f329cc8c0e8.tar.gz
apple handful of pthread api update.
Diffstat (limited to 'src')
-rw-r--r--src/unix/bsd/apple/mod.rs34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/unix/bsd/apple/mod.rs b/src/unix/bsd/apple/mod.rs
index 3955354ff2..a36b4c9f8a 100644
--- a/src/unix/bsd/apple/mod.rs
+++ b/src/unix/bsd/apple/mod.rs
@@ -68,6 +68,23 @@ impl ::Clone for timezone {
}
}
+#[cfg_attr(feature = "extra_traits", derive(Debug))]
+#[repr(u32)]
+pub enum qos_class_t {
+ QOS_CLASS_USER_INTERACTIVE = 0x21,
+ QOS_CLASS_USER_INITIATED = 0x19,
+ QOS_CLASS_DEFAULT = 0x15,
+ QOS_CLASS_UTILITY = 0x11,
+ QOS_CLASS_BACKGROUND = 0x09,
+ QOS_CLASS_UNSPECIFIED = 0x00,
+}
+impl ::Copy for qos_class_t {}
+impl ::Clone for qos_class_t {
+ fn clone(&self) -> qos_class_t {
+ *self
+ }
+}
+
s! {
pub struct ip_mreq {
pub imr_multiaddr: in_addr,
@@ -3568,6 +3585,23 @@ extern "C" {
val: *mut ::c_int,
) -> ::c_int;
pub fn pthread_rwlockattr_setpshared(attr: *mut pthread_rwlockattr_t, val: ::c_int) -> ::c_int;
+ pub fn pthread_threadid_np(thread: ::pthread_t, thread_id: *mut u64) -> ::c_int;
+ pub fn pthread_attr_set_qos_class_np(
+ attr: *mut pthread_attr_t,
+ class: qos_class_t,
+ priority: ::c_int,
+ ) -> ::c_int;
+ pub fn pthread_attr_get_qos_class_np(
+ attr: *mut pthread_attr_t,
+ class: *mut qos_class_t,
+ priority: *mut ::c_int,
+ ) -> ::c_int;
+ pub fn pthread_set_qos_class_self_np(class: qos_class_t, priority: ::c_int) -> ::c_int;
+ pub fn pthread_get_qos_class_np(
+ thread: ::pthread_t,
+ class: *mut qos_class_t,
+ priority: *mut ::c_int,
+ ) -> ::c_int;
pub fn __error() -> *mut ::c_int;
pub fn backtrace(buf: *mut *mut ::c_void, sz: ::c_int) -> ::c_int;
#[cfg_attr(