7.4 thread -- Hilos de control múltiples

Este módulo proporciona primitivas de bajo nivel para trabajar con hilos múltiples (también conocidos como procesos ligeros o tareas), hilos de control múltiples que comparten su espacio global de datos. Para gestionar la sincronización se proporcionan cerrojos simples (mutexes o semáforos binarios).

Este módulo es opcional. Está disponible en Windows NT y '95, SGI IRIX, Solaris 2.x y en todos los sistemas que tengan una implementación de hilos POSIX (``pthread'').

Define las siguientes constantes y funciones:

error
Se lanza en errores específicos de hilos.

LockType
El tipo de dato de los cerrojos.

start_new_thread (function, args[, kwargs])
Arranca un nuevo hilo. El hilo ejecuta la función function con la lista de argumentos args (que debe ser una tupla). El argumento opcional kwargs especifica un diccionario de argumentos por clave. Cuando finaliza la función, el hilo finaliza silenciosamente. Cuando la función termina con una excepción no capturada, se presenta un volcado de la pila y el hilo termina (los otros hilos que hubiere siguen su ejecución).

exit ()
Lanza la excepción SystemExit. Si no es capturada, provoca la finalización silenciosa del hilo.

exit_thread ()
Obsoleto a partir de la versión 1.5.2. Usar exit().

Sinónimo obsoleto de exit().

allocate_lock ()
Devuelve un nuevo objeto cerrojo. Más adelante se describen los métodos de los cerrojos. El estado inicial del cerrojo es desbloqueado.

get_ident ()
Devuelve el `identificador de hilo' del hilo en curso. Es un entero positivo. Su valor carece de significado y sólo tiene la utilidad de servir de identificador único para, por ejemplo, servir de índice en un diccionario de hilos. Los identificadores de hilo pueden reciclarse si un hilo finaliza y se crea un hilo nuevo.

Los objetos cerrojo disponen de los siguientes métodos:

acquire ([waitflag])
Sin el argumento opcional, este método adquiere el cerrojo incondicionalmente, esperando si es necesario hasta que otro hilo lo libere (sólo un hilo puede adquirir el cerrojo a la vez, ésa es su característica fundamental) y devuelve None. Si se proporciona el argumento entero waitflag, la acción depende de su valor. Si es cero, sólo se adquiere el cerrojo si se puede adquirir en el instante, sin esperar. Si no es cero, se adquiere el cerrojo incondicionalmente, tal como se describió antes. Si hay argumento de entrada, el valor de retorno es 1 si se adquiere el cerrojo o 0 si no.

release ()
Libera el cerrojo. El cerrojo debe haber sido adquirido antes, pero no necesariamente por el mismo hilo que lo desea liberar.

locked ()
Devuelve el estado del cerrojo: 1 si está adquirido por algún hilo o 0 si no.

Precauciones:


Ver Sobre este documento... para obtener información sobre sugerencias.