Files
sunnypilot/common/threadname.py
T
Jason Wen 77f357e65a sunnypilot v2024.07.20-2654
version: sunnypilot v0.9.8.0 release
  date: 2024-07-20T12:31:15
  master commit: 530cccb0da114d73ba570e1095c856720b56b66b
2024-07-20 12:31:15 +00:00

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 ""