Java
Departamento de Lenguajes y Ciencias de la Computación E.T.S. Ingeniería Informática Universidad de Málaga
Contenido
– Creación de Hebras
• • • • • • •• La clase Thread La interfaz runnable Hebras como objetos autónomos Paso de parámetros Finalización Estados de una hebra Prioridades Ejemplos
– Sincronización en Java
Departamento de Lenguajes yCiencias de la Computación. Universidad de Málaga
2
Introducción
Un Proceso
– Contiene su propio espacio virtual de direcciones
• Es distinto para cada proceso
– Contiene una o más hebras(threads) de ejecución
• La hebra es la unidad básica de ejecución • Las hebras se planifican siguiendo criterios clásicos
– disponibilidad de recursos – prioridades – justicia
• Cada hebratiene su propia pila, variables locales y contador de programa • Los cambios de contexto son muy rápidos
Departamento de Lenguajes y Ciencias de la Computación. Universidad de Málaga
3Introducción
Los procesos además contienen
– Uno o varios segmentos de código – Uno o varios segmentos de datos para las variables globales – Información del entorno de ejecución
• Cadenas de caracteres coninformación variable
– path – parámetros del entorno – ....
– El heap del proceso – Recursos
• Manejadores abiertos • ....
Departamento de Lenguajes y Ciencias de la Computación. Universidad deMálaga
4
Creación de hebras
– Creación
Thread th; th = new Thread ();
– La clase Thread se encuentra en java.lang.Thread – Una vez creadas, las hebras se pueden configurar y ejecutar(método start de la hebra) – Posteriormente el método start llamará al método run de la hebra – Existen dos formas de crear hebras
• Heredando de la clase Thread y redefiniendo el método run •Implementando la Interfaz runnable
Departamento de Lenguajes y Ciencias de la Computación. Universidad de Málaga
5
Creación de hebras
class HerenciaThread extends Thread { String m_palabra; //...
Regístrate para leer el documento completo.