Auto merge of #123315 - devnexen:thread_get_name_solaris, r=ChrisDenton
std:🧵 adding get_name implementation for solaris/illumos.
THREAD_NAME_MAX is 32 (31 max + 1 for the null terminator).
This commit is contained in:
commit
a7e3b1c8c5
@ -225,13 +225,19 @@ pub fn set_name(_name: &CStr) {
|
|||||||
// Newlib, Emscripten, and VxWorks have no way to set a thread name.
|
// Newlib, Emscripten, and VxWorks have no way to set a thread name.
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(any(target_os = "linux", target_os = "freebsd", target_os = "netbsd",))]
|
#[cfg(any(
|
||||||
|
target_os = "linux",
|
||||||
|
target_os = "freebsd",
|
||||||
|
target_os = "netbsd",
|
||||||
|
target_os = "solaris",
|
||||||
|
target_os = "illumos"
|
||||||
|
))]
|
||||||
pub fn get_name() -> Option<CString> {
|
pub fn get_name() -> Option<CString> {
|
||||||
#[cfg(target_os = "linux")]
|
#[cfg(target_os = "linux")]
|
||||||
const TASK_COMM_LEN: usize = 16;
|
const TASK_COMM_LEN: usize = 16;
|
||||||
#[cfg(target_os = "freebsd")]
|
#[cfg(target_os = "freebsd")]
|
||||||
const TASK_COMM_LEN: usize = libc::MAXCOMLEN + 1;
|
const TASK_COMM_LEN: usize = libc::MAXCOMLEN + 1;
|
||||||
#[cfg(target_os = "netbsd")]
|
#[cfg(any(target_os = "netbsd", target_os = "solaris", target_os = "illumos"))]
|
||||||
const TASK_COMM_LEN: usize = 32;
|
const TASK_COMM_LEN: usize = 32;
|
||||||
let mut name = vec![0u8; TASK_COMM_LEN];
|
let mut name = vec![0u8; TASK_COMM_LEN];
|
||||||
let res = unsafe {
|
let res = unsafe {
|
||||||
@ -282,7 +288,9 @@ pub fn get_name() -> Option<CString> {
|
|||||||
target_os = "ios",
|
target_os = "ios",
|
||||||
target_os = "tvos",
|
target_os = "tvos",
|
||||||
target_os = "watchos",
|
target_os = "watchos",
|
||||||
target_os = "haiku"
|
target_os = "haiku",
|
||||||
|
target_os = "solaris",
|
||||||
|
target_os = "illumos"
|
||||||
)))]
|
)))]
|
||||||
pub fn get_name() -> Option<CString> {
|
pub fn get_name() -> Option<CString> {
|
||||||
None
|
None
|
||||||
|
Loading…
Reference in New Issue
Block a user