20 lines
416 B
Python
20 lines
416 B
Python
import ctypes
|
|
import os
|
|
|
|
LINUX = os.name == 'posix' and os.uname().sysname == 'Linux'
|
|
|
|
if LINUX:
|
|
libc = ctypes.CDLL('libc.so.6')
|
|
|
|
def setthreadname(name: str) -> None:
|
|
if LINUX:
|
|
name = name[-15:] + '\0'
|
|
libc.prctl(15, str.encode(name), 0, 0, 0)
|
|
|
|
def getthreadname() -> str:
|
|
if LINUX:
|
|
name = ctypes.create_string_buffer(16)
|
|
libc.prctl(16, name)
|
|
return name.value.decode('utf-8')
|
|
return ""
|