Documente Academic
Documente Profesional
Documente Cultură
Un hilo de ejecucin o subproceso es una caracterstica que permite a una aplicacin realizar varias tareas a la vez (concurrentemente). Los distintos hilos de ejecucin comparten una serie de recursos tales como el espacio de memoria, los archivos abiertos, situacin de autenticacin, etc. Esta tcnica permite simplificar el diseo de una aplicacin que debe llevar a cabo distintas funciones simultneamente. Un hilo es bsicamente una tarea que puede ser ejecutada en paralelo con otra tarea. Los hilos de ejecucin que comparten los mismos recursos, sumados a estos recursos, son en conjunto conocidos como un proceso. El hecho de que los hilos de ejecucin de un mismo proceso compartan los recursos hace que cualquiera de estos hilos pueda modificar stos. Cuando un hilo modifica un dato en la memoria, los otros hilos acceden a ese dato modificado inmediatamente. Lo que es propio de cada hilo es el contador de programa, la pila de ejecucin y el estado de la CPU (incluyendo el valor de los registros).
Cundo se comenzaron a utilizar los hilos? Cuando se necesitaba dar un mejor rendimiento al sistema, para que cuando un proceso que realizaba varios servicios, al ejecutar una accin y quedar a la espera de la respuesta, no se bloquear, se pens en la necesidad de que dicho proceso pudiera seguir realizando otras tareas mientras la tarea anterior estaba en espera de su respuesta (bloqueada), aqu naci la necesidad de utilizar los hilos.
Los usos ms comunes son en tecnologas SMPP y SMS para la telecomunicaciones aqu hay muchsimos procesos corriendo a la vez y todos requiriendo de un servicio.
Procesamiento asncrono
Los elementos asncronos de un programa se pueden implementar como hilos. Un ejemplo es como los softwares de procesamiento de texto guardan archivos temporales cuando se est trabajando en dicho programa. Se crea un hilo que tiene como funcin guardar una copia de respaldo mientras se contina con la operacin de escritura por el usuario sin interferir en la misma.
Aceleracin de la ejecucin
Se pueden ejecutar, por ejemplo, un lote mientras otro hilo lee el lote siguiente de un dispositivo.