Współbierzność w API

0

Witam
mam problem z wykorzystaniem współbieżności w API. Chciałem zrobić okienko w którym będą się rysowały trzy linie. Za każdą linię będzie odpowiadał dany wątek. To miałbyć wyścig linii poziomych równoległych z danego punktu do drugiego. Czas i nazwę określam w konstruktorze jednak nie wiem jaki sposób mam połączyć wątki z grafiką.
Moje wypociny:
JAVA:

import java.awt.;
import javax.swing.
;
import java.awt.event.*;

public class Aplikacja2 extends JFrame{
public Graphics gDC;
class Watek extends Thread{
int nr; // nr watku
int cz; // czas uspienia watku
int odl;
String nazwa;
Watek(int nr,int cz,String nazwa){
this.nr=nr;
this.cz=cz;
this.odl=0;
start();
}
public void run(){
while(odl<300){
try{
odl++;
sleep(cz);
}catch(InterruptedException ex){}
switch(nr){
case 1: gDC.drawLine(50,50,50+odl,50); break;
case 2: gDC.drawLine(50,100,50+odl,100); break;
case 3: gDC.drawLine(50,150,50+odl,150); break;
}
}
}
}

class MyWindowAdapter extends WindowAdapter{
	public void windowClosing(WindowEvent e){
		dispose();
	}
}
    
public Aplikacja2() {
	addWindowListener(new MyWindowAdapter());
	setSize(500,300);
	setVisible(true);    		
}

public void paint(Graphics gDC){
	gDC.clearRect(0,0,getSize().width,getSize().height);
	Watek w1 = new Watek(1,100,"Kubica");
	Watek w2 = new Watek(2,150,"Roger");
	Watek w3 = new Watek(3,200,"Miller");   	
}
public static void main(String[] args) {
	SwingUtilities.invokeLater(new Runnable(){public void run(){new Aplikacja2();}});
	        
}

}

0

Hej. W sumie z watkow za duzo nie robie wiec moge sie mylic ale czy jak wykona sie kolejny raz metoda paint() to czy watki nie tworza sie od poczatku?

1 użytkowników online, w tym zalogowanych: 0, gości: 1