Saltar al contenido

¿Cómo obtener una identificación de hilo en Python?

Laura, miembro de nuestro equipo, nos hizo el favor de crear este post ya que domina perfectamente dicho tema.

Solución:

threading.get_ident() obras, o threading.current_thread().ident (o threading.currentThread().ident para Python <2.6).

Usando el módulo de registro, puede agregar automáticamente el identificador de hilo actual en cada entrada de registro. Simplemente use uno de estos mapas LogRecord keys en su formato de registrador string:

%(hilo)d : Id. de subproceso (si está disponible).

%(nombre del subproceso)s: Nombre del hilo (si está disponible).

y configure su controlador predeterminado con él:

logging.basicConfig(format="%(threadName)s:%(message)s")

los thread.get_ident() La función devuelve un entero largo en Linux. No es realmente una identificación de hilo.

Utilizo este método para obtener realmente la identificación del hilo en Linux:

import ctypes
libc = ctypes.cdll.LoadLibrary('libc.so.6')

# System dependent, see e.g. /usr/include/x86_64-linux-gnu/asm/unistd_64.h
SYS_gettid = 186

def getThreadId():
   """Returns OS thread id - Specific to Linux"""
   return libc.syscall(SYS_gettid)

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *