Recursos compartidos por los hilos

Los recursos de los hilos dependen del proceso que los ejecuta.

Estados de un hilo. Cambios de estado

Los hilos cambian de estado a lo largo de su ejecución, los estados pueden ser:

  • Estado Nuevo: el hilo ha sido creado pero no inicializado, es decir, no se ha ejecutado todavía el método que lo inicia.
  • Estado Ejecutable: el hilo puede estar ejecutándose, siempre y cuando se le haya asignado un determinado tiempo de CPU.
  • Estado Bloqueado: el hilo podría estar ejecutándose, pero hay alguna actividad interna suya que lo impide, como por ejemplo una espera producida por una operación de escritura o lectura de datos por teclado (E/S).
  • Estado Muerto: la forma habitual de que un hilo muera es finalizando con la tarea que está realizando, también se puede parar de forma abrupta no es recomendable.

Elementos relacionados con la programación de hilos. Librerías y clases

La programación de los hilos depende del lenguaje de programación que se utilice y el sistema operativo sobre el que se programa.

Gestión de hilos

Las operaciones básicas sobre hilos son:

  • Creación y arranque de hilos. Todos los programas que se ejecutan tienen un hilo de ejecución principal.
  • Espera de hilos. Como varios hilos comparten el mismo procesador o núcleo, puede ser que haya que poner a la espera el hilo si no tiene trabajo que hacer.

Sincronización de hilos

Los hilos se comunican mediante el intercambio de información a través de variables y objetos en memoria a los que se accede de forma sincronizada.

Compartición de información entre hilos

Los hilos se comunican mediante el intercambio de información a través de variables y objetos en memoria.

Programación de aplicaciones multihilo

La programación de los hilos depende del lenguaje de programación que se utilice y el sistema operativo sobre el que se programa.