import javax.swing.*;
public class MultiHilo extends JFrame
{
JFrame pantalla = new JFrame("Probando multihilos");
JTextArea texto1 = new JTextArea();
JTextArea texto2 = new JTextArea();
public MultiHilo()
{
pantalla.setLayout(null);
pantalla.setBounds(350, 80, 650, 350);
texto1.setBounds(10, 10, 300, 300);
texto2.setBounds(340, 10, 300, 300);
pantalla.add(texto1);
pantalla.add(texto2);
pantalla.setVisible(true);
MiHilo hilo1 = new MiHilo("Hilo No. 1", texto1);
MiHilo hilo2 = new MiHilo("Hilo No. 2", texto2);
hilo1.start();
hilo2.start();
/*hilo1.Impresion(hilo1, texto1);
hilo2.Impresion(hilo2, texto2);*/
}
public static void main(String []args)
{
MultiHilo h = new MultiHilo();
}
class MiHilo extends Thread
{
JTextArea area = new JTextArea();
public MiHilo(String nombre, JTextArea texto)
{
this.setName(nombre);
area = texto;
}
public void run()
{
try
{
String mensaje = "";
for(int k = 1; k <= 10; k++)
{
mensaje = "El " + this.getName() + " esta imprimiendo el trabajo No. " + k + "\n";
area.setText(area.getText() + mensaje);
//System.out.println("El " + hilo.getName() + " esta imprimiendo el trabajo No. " + k);
this.sleep(k * 100);
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
/*public synchronized void Impresion(Thread hilo, JTextArea texto)
{
try
{
String mensaje = "";
for(int k = 1; k <= 10; k++)
{
mensaje = "El " + hilo.getName() + " esta imprimiendo el trabajo No. " + k + "\n";
texto.setText(texto.getText() + mensaje);
//System.out.println("El " + hilo.getName() + " esta imprimiendo el trabajo No. " + k);
hilo.sleep(k * 100);
}
}
catch(Exception e)
{
e.printStackTrace();
}
}*/
}
}
No hay comentarios:
Publicar un comentario