El post que buscas se encuentra eliminado, pero este también te puede interesar

Hilos 2 (Threads) en java

Anuncios

Funciones de la Clase Thread

Thread(): Realiza la reserva de memoria necesaria para la creación de un nuevo objeto Thread.

Thread(Runnable target): Realiza la reserva de memoria necesaria para la creación de un nuevo objeto Thread.

Thread(Runnable target, String name): Realiza la reserva de memoria necesaria para la creación de un nuevo objeto Thread.

Thread(String name): Realiza la reserva de memoria necesaria para la creación de un nuevo objeto Thread.

Thread(ThreadGroup group, Runnable target): Realiza la reserva de memoria necesaria para la creación de un nuevo objeto Thread.

Thread(ThreadGroup group, Runnable target, String name): Crea un nuevo objeto Thread con un objeto de ejecución concreto y un nombre concreto, y se une al grupo de hilos especificado.

Thread(ThreadGroup group, String name): Crea un nuevo objeto Thread como miembro de un grupo de hilos concreto.

static int activeCount(): Devuelve el número actual de hilos activos en el grupo de hilos de este hilo.

void checkAccess() : Determina si el hilo actualmente en ejecución tiene permiso para modificar este hilo.

static Thread currentThread(): Devuelve una referencia al objeto hilo que se está ejecutando actualmente.

void destroy(): Destruye este hilo, sin realizar ningún tipo de limpieza.

static void dumpStack(): Imprime una traza de pila del hilo actual.

static int enumerate(Thread[] tarray): Copia dentro del array especificado todos los hilos activos del grupo y subgrupos de hilos del hilo en cuestión.

ClassLoader getContextClassLoader(): Devuelve el contexto ClassLoader de este Thread.

String getName(): Devuelve el nombre del hilo

void setName(String name): Cambia el nombre de este hilo, asignándole el especificado como argumento.

int getPriority(): Devuelve la prioridad del hilo.

ThreadGroup getThreadGroup(): Devuelve el grupo de hilos al cual cual pertenece el hilo.

void interrupt(): Interrumpe la ejecución del hilo.

static boolean interrupted(): Comprueba si el hilo actual ha sido interrumpido.

boolean isAlive(): Comprueba si el hilo está vivo.

boolean isDaemon(): Comprueba si el hilo es un hilo daemon.

void setDaemon(boolean on): Establece este hilo como hilo daemon, o como hilo de usuario.

void join(): Espera a que este hilo muera.

void join(long millis): Espera, como mucha millis milisegundos a que este hilo muera.

void run(): Si este hilo se construyó utilizando un objeto Runnable de ejecución independiente, entonces el método run de ese objeto es invocado; en otro caso, este método no hace nada y vuelve.

static void sleep(long millis): Hace que el hilo actualmente en ejecución pase a dormir temporalmente durante el número de milisegundos especificado.

void start(): Hace que este hilo comience la ejecución; la Máquina Virtual de Java llama al método run de este hilo.

String toString(): Devuelve una representación en formato cadena de este hilo, incluyendo el nombre del hilo, la prioridad, y el grupo de hilos.

static void yield(): Hace que el hilo actual de ejecución, pare temporalmente y permita que otros hilos seejecuten (útil en sistemas con planificación de hilos no preventiva). Se aconseja consultar las referencia citada anteriormente para consultar la descripción de métodos cuyo uso directo es inherentemente inseguro, como son stop, suspend y resume.

En este programa se nuestra cono se ejecutan los hilos aleatoria mente.

package hilos;

/**
@author Enrique
*/
public class Hilos extends Thread{

public Hilos(String str){
super (str);
}
public void run(){
for(int i=0;i<10;i++)
System.out.println(i+""+getName());
System.out.println("Termina thrad"+getName());
}

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
new Hilos("Preceso 1".start();
new Hilos("Preceso 2".start();
new Hilos("Preceso 3".start();
new Hilos("Preceso 4".start();
// new Hilos("Inicia Thread de main";
}
}
En el siguiente programa se ejemplifica en tiempo de ejecución de 4 hilos se muestra en milisegundos su ejecución de estos.

package hilos;

/**
* @author Enrique
*/
public class PrintThread extends Thread {

int sleepTime;

public PrintThread(String id) {
super(id);

sleepTime = (int) (Math.random() * 9000*5);
System.out.println("Hilo #" + getName() + ": Dormira: " + sleepTime + "mseg";
}

public void run() {
try {
sleep(sleepTime);
} catch (InterruptedException e) {
System.out.println("HILO" + getName());
}
System.out.println("Ternima hilo " + getName());
}

public static void main(String[] args) {
PrintThread thread1, thread2, thread3, thread4;
thread1 = new PrintThread("Preceso 1";
thread2 = new PrintThread("Preceso 2";
thread3 = new PrintThread("Preceso 3";
thread4 = new PrintThread("Preceso 4";
thread1.start();
thread2.start();
thread3.start();
thread4.start();
}
}

En el siguiente programa utilizamos hilos y la clase calendar - timer. Para programar la detención de una tarea “Hilo”. El formato de tiempo es de 24Hrs.


/**
* @author Enrique
*/
import java.util.*;
import java.util.Calendar;

public class AlarmaRecordatoriaA {

Timer timer;

public AlarmaRecordatoriaA() {
timer = new Timer();
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 20);
calendar.set(Calendar.MINUTE, 14);
calendar.set(Calendar.SECOND, 2);
Date time = calendar.getTime();
timer.schedule(new Recordatorio(), time);
}

class Recordatorio extends TimerTask {

public void run() {
System.out.println("Tiempo terminado termina tarea";
timer.cancel();
}
}

public static void main(String args[]) {
new AlarmaRecordatoriaA();
System.out.println("Tarea programada inicia ";
}
}

0 comentarios - Hilos 2 (Threads) en java

Los comentarios se encuentran cerrados