EQUIPO 4 INTEGRANTES: ALVARADO LUNA AIDA ARACELI MENESES AGUILAR AXEL NESTOR CONTRERAS MONDRAGON ALAN HEMIR SANCHEZ MUÑIZ JOSE FRANCISCO.

Slides:



Advertisements
Presentaciones similares
Proyecto Piloto Jóvenes Voces Nuevas Evaluación de Medio Término Y, cómo nos ven?
Advertisements

UNIVERSIDAD PRIVADA SAN PEDRO ESCUELA INGENIERIA CIVIL
El modo en que deben producirse los actos administrativos. Es un complejo de actos que, normalmente, concluye con la producción de un acto final. Es la.
DIAGRAMA DE ACTIVIDAD Roberto Certain Leonardo Molina.
Programación Interactiva Hilos
funciones Por: Carlos Alberto García Acosta
I.T.E.S.R.C. Romina Tamez Andrea Martínez Ma. De Lourdes Solís
ARMAR EL CUBO DE RUBIK EN 7 PASOS
Administración de procesos y del procesador.
Microprocesadores.
Resolución de Problemas Algoritmos y Programación
El presente material contiene
Programación 1 Introducción
Introducción a la programación
Ejemplo: Creación y mutación de procesos
Mejoras a las Máquinas Von Neumann
Tema 12: Programación multihilo
Java. Threads (Hebras) Los sistemas operativos actuales permiten la multitarea, aunque esta se de tiempo compartido cuando se trabaja con un solo procesador.
Inteligencia Artificial (BAIA)  Se propone lograr que las computadoras se comporten de manera que podamos reconocerlas como inteligentes.  Tiene por.
Como curarse de la Melancolía ?
EDUCACIÓN PARA LOS PADRES
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SCJP 6.0 SEMANA OCHO THREADS.
PROCESO DE PRODUCCIÓN Preguntas:
CLASIFICACIÓN DEL SISTEMA OPERATIVO POR APLICACIÓN
Análisis y Diseño de Algoritmos
Facultad de Ingeniería Manufactura Integrada Por Computador II
Un hilo es un único flujo de ejecución dentro de un proceso. Un proceso es un programa ejecutándose dentro de su propio espacio de direcciones. Los.
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SCJP 6.0 SEMANA OCHO THREADS.
Conceptos generales: Concurrencia: Existencia simultánea de varios procesos en ejecución. IMPORTANTE: EXISTENCIA SIMULTÁNEA NO IMPLICA EJECUCIÓN SIMULTÁNEA.
Carrera de la 37. Esta un grupo de alumnos de tercer año con el tema de calculo integral “área bajo la curva” ¿De que se tratara el tema de inicio de.
Programación Lineal Unidad 1 Parte 3.
Desde que nacemos nos comunicamos, el acto de comunicar es fundamental para el desarrollo de las personas. Poseemos una lengua heredada que aprendemos.
El joven que huyó Colección: Temas para jóvenes Mc 14, 51-52
El proceso de modelación
Material de apoyo Unidad 4 Estructura de datos
Hebras Cecilia Hernández. Qué es un proceso? Consiste Espacio de direccionamiento Código a ejecutar Datos estáticos y dinámicos Pila o stack CPU: PC,
INFORMATICA III ESCUELA DE INGENIERIA ELECTRONICA DEPARTAMENTO DE SISTEMAS E INFORMATICA.
Hilos En La Computación. (THREADS).
Características de un sistema operativo
PHP-MYSQL Introducción Prof. Juan Carlos Lima Cruz Colegio IPTCE.
Teoría de Colas.
Monitores Cabudare, noviembre de 2010 Universidad Fermín Toro
Operaciones con números complejos
SCJP SUN CERTIFIED PROGRAMMER FOR JAVA 6. SCJP 6.0 SEMANA OCHO THREADS.
INFORMATICA III ESCUELA DE INGENIERIA ELECTRONICA DEPARTAMENTO DE SISTEMAS E INFORMATICA.
TEMA 2. Programación Concurrente
Administrador de procesos
SISTEMAS OPERATIVOS 1.4 CLASIFICACIÓN DE LOS S.O
Ecuaciones Algebraicas
Bloque 05 Ideas centrales Actividades por realizar Realizar la lectura de la guía, y el documento que lleva como título “EL PORTAFOLIO, HERRAMIENTA DE.
FLOR ALBA ACEVEDO COD JENNIFFER TATIANA TORRES COD
Unidad 2 – Gestión de Procesos
Rie cuando estes triste .
TRABAJO POTENCIA Y ENERGIA.
Threads en Java  Threads: programas multitarea  Creación de threads  Ciclo de vida de un thread  Sincronización.
Un proceso ligero (thread o hebra) es un programa en ejecución que comparte la imagen de la memoria y otras informaciones con otros procesos ligeros.
La estrategia de prevención del interbloqueo consiste, a grandes rasgos, en diseñar un sistema de manera que esté excluida, a priori, la posibilidad de.
UTFSM - Sistemas Operativos
Cliente-Servidor La arquitectura cliente-servidor permite al usuario en una máquina, llamada el cliente, requerir algún tipo de servicio de una máquina.
THREADS JAVA Ing. Esp. Ricardo Cujar. HILO Un hilo es un proceso que se está ejecutando en un determinado momento en el sistema operativo. Se les define.
“CURSO PROPEDÉUTICO PARA EL MEJORAMIENTO DEL PENSAMIENTO MATEMÁTICO”
Objetivos del tema. Hemos visto lo que es la estructura de un programa, los datos, que esos datos en realidad se convierten en variables de distinto.
Desarrollador Profesional de Juegos Programación III Unidad II Trabajando con bloqueo de datos.
Hilos Java Profesor Elian Rojas Berrocal
También es conocido como proceso ligero. Es una entidad básica de utilización de CPU y esta formado por un contador de programa, algunos registros y una.
Desarrollador Profesional de Juegos Programación III Unidad II Introdución a threading en windows.
Historia de los sistemas operativos. Los Sistemas Operativos han sufrido una serie de cambios revolucionarios llamados generaciones. Hay cuatro generaciones:
PROCESADOR.- El procesador es el cerebro del sistema, encargado de procesar toda la información. Básicamente, es el "cerebro" de la computadora. Prácticamente,
Desarrollador Profesional de Juegos Programación III Unidad II Hilos de ejecución Threads.
Tema 1: Concurrencia con Java
Transcripción de la presentación:

EQUIPO 4 INTEGRANTES: ALVARADO LUNA AIDA ARACELI MENESES AGUILAR AXEL NESTOR CONTRERAS MONDRAGON ALAN HEMIR SANCHEZ MUÑIZ JOSE FRANCISCO

Java en hebras

La traducción literal de thread es hilo o hebra, y se utiliza también para referirse al hilo de un discurso. El concepto de threads en los ambientes y sistemas operativos es un poco complejo de explicar pero sencillo de entender: independientemente del sistema elegido, puede pensarse que un thread es algo así como el lugar de ejecución de un programa.

Java es multithreading Java es multithreading. Esto significa algo así como que tiene capacidad de diálogo, y más aún: puede ejecutar muchos threads en paralelo, como si tratáramos de una conversación múltiple y simultánea. No confundir aquí multithreading con la capacidad de ejecutar varios programas a la vez. Esta es una posibilidad, pero también un mismo programa puede utilizar varios threads ("caminos de ejecución"?) simultáneamente. Esto, por supuesto, depende fundamentalmente de la capacidad del sistema operativo para soportar multithreading, y por esto Java no puede ejecutarse (al menos en forma completa) en sistemas que no lo soporten.

Pasos para usar threads en un programa.

Hay tres cosas a tener en cuenta para usar threads en un programa: · La clase que queremos asignar a un thread debe implementar la interface Runnable. · Debemos crear una variable (instancia) del tipo Thread, que nos permitirán acceder y manejar el thread. En los applets, en el método start() simplemente crearemos el thread (y, posiblemente, lo pondremos a ejecutar) · Y por último tenemos que crear un método run() que es el que ejecuta el código del programa propiamente dicho.

La interface Runnable, simplemente definida como: public interface java.lang.Runnable { // Methods public abstract void run(); } le asegura al compilador que nuestra clase (la que utilizará el thread para ejecutarse) dispone de método run().

Creando Threads

Thread es una clase básica en Java, que implementa la interface Runnable y dispone de unos cuantos métodos por defecto. Lo importante a tener en cuenta que, para usar Threads, debemos crearlas como instancias y ponerlas a "andar": Thread Juan = new Thread (new Amigo("Juan")); .............. Juan.start(); .............. Juan.join();

Un thread tiene cuatro estados posibles: creado: ha sido creado mediante new(), pero no se ha puesto en marcha todavía. activo: está en ejecución, ya sea porque arrancó con start() o fue "despertado" con resume(). dormido: ha sido suspendida su ejecución momentáneamente mediante wait(), sleep() o suspend(). muerto: se ha detenido definitivamente, ya sea porque se terminó el programa o mediante el llamado a stop().

prioridades para los threads

SINCRONIZACION.

Otra manera de sincronizar el acceso de los threads a los métodos, es lograr que éstos se pongan de acuerdo entre sí, esperando uno hasta que otro realizó alguna tarea dada. Para esto se usan los métodos wait() y notify(). Cuando un thread llama a wait() en un método de un objeto dado, queda detenido hasta que otro thread llame a notify() en algún método del mismo objeto. Por ejemplo, vamos a suponer cuatro empleados que se encuentran con su jefe y lo saludan, pero sólo luego de que éste los salude primero.

Usé notifyAll() en lugar de notify(), porque en el segundo caso sólo se notificaría al primer thread (el primer empleado en llegar) y no a los demás, que se quedarían en el wait(). Como se ve en la salida, a pesar de que los empleados están en condiciones de saludar, no lo hacen hasta que no llega el jefe: (Pablo llega) (Luis llega) (Andrea llega) (Pedro llega) (JEFE llega) JEFE> Buenos dias! Luis> Buenos dias jefe! Pedro> Buenos dias jefe! Andrea> Buenos dias jefe! Pablo> Buenos dias jefe!