Multithreading - A la manera de Delphi.

Martin Harvey.

Version 1.1a

El original en inglés puede ser encontrado en www.pergolesi.demon.co.uk/prog/threads/ToC.html

Esta traducción puede ser encontrada en línea en http://www.driverop.com.ar/tutorialesdelphi/threads/introduccion.htm

Tabla de contenidos.

Introducción.
Dedicatorias.
Lecturas recomendadas.
Ayuda para la navegación.
Historial de cambios.
Créditos.

Capítulo 1. ¿Qué son los hilos de ejecución? ¿Porqué usarlos?
Capítulo 2. Crear un hilo de ejecución en Delphi.
Capítulo 3. Sincronización básica.
Capítulo 4. Destrucción simple de hilos.
Capítulo 5. Más sobre destrucciones de hilos. Deadlock.
Capítulo 6. Más sincronización: Secciones críticas y mutexes.
Capítulo 7. Guía de programación de mutex. Control de concurrencia.
Capítulo 8. Clases Delphi seguras para entornos multihilo y prioridades.
Capítulo 9. Semáforos. Administración del flujo de datos. La relación productor - consumidor.
Capítulo 10. E/S y flujo de datos: del bloqueo a lo asincrónico, ida y vuelta.
Capítulo 11. Sicronizadores y Eventos.
Capítulo 12. Más dispositivos Win32 para la sincronización.
Capítulo 13. Usar hilos conjuntamente con el BDE, las excepciones y las DLLs.
Capítulo 14. Un problema del mundo real, y su solución.


Introducción

Esta guía fue escrita para quien esté interesado en mejorar la respuesta en sus aplicaciones Delphi mediante el uso de hilos de ejecución (Threads). Cubre aspectos desde los más simples (para el novato) hasta algunos más sofisticados en un nivel intermedio y algunos ejemplos traen aspectos que rozan el nivel avanzado. Se asume que el lector conoce la programación en Object Pascal, incluyendo la programación orientada a objetos y una comprensión del trabajo con eventos de programación.

Dedicatorias

Dedicado a tres miembros del departamento de Ciencias de la Computación de la Universidad de Cambridge: Dr Jean Bacon, Dr Simon Crosby, and Dr Arthur Norman.

Muchas gracias a Jean, como tutor, por hacer que algo complicado pareciera sencillo, por proveer excelente material de referencia, por levantar la cortina alrededor de un tema muy misterioso. Además merece agradecimiento como directora de estudios, por explicar la ciencia de la computación a mi propio ritmo. ¡Me tomó tres años darme cuenta por mi mismo!

Muchas gracias a Simons como tutor, por mostrarme que apesar de que los modernos sistemas operativos pueden ser endemoniadamente complicados los principios en los que se basan son muy simples. Merece además las gracias por tomar a un estudiantes con ideas no convecionales acerca del proyecto final de la materia, y por proveerme acesoramiento muy útil en mi disertación del proyecto.

Arthur Norman nunca me enseño nada acerca de multitarea. Sin embargo me enseñó muchas otras cosas que me ayudaron a escribir las partes más complicadas de esta guía.

También merece una mención por algunas de las mejores citas nunca leídas por un lector de ciencias de la computación:

Él hasta tiene su propia página de fans.

Lecturas recomendadas.

Título: Concurrent Systems: An integrated approach to Operating Systems, Database, and Distributed Systems.
Autor: Jean Bacon.
Editorial : Addison-Wesley
ISBN: 0-201-41677-8

El autor acepta sugerencias de otros títulos útiles.

Ayuda para la navegación.

Los escritos y los diagramas de esta guía están contenidos en paginas HTML simples, una por cada capítulo. Los códigos fuente de ejemplo aparecen en ventanas emergentes. Necesitarás habilitar javascript en tu navegador para verlos. Para facilitar la vista de los escritos y el código fuente en paralelo, el lector encontrará muy útil poner varias ventanas del navegador en mosaico. Esto se puede lograr haciando click derecho en la barra de tareas y seleccionar "Mosaico vertical".

Historial de cambios.

Versión 1.1

Créditos.

Muchas gracias a las siguientes personas por revisar, sugerir, corregir y mejorar esta guía.

Créditos de esta traducción


© Martin Harvey 2000.