Pytanie!!Skąd watek w1 wie ze wątek w2 ( albo odwrotnie ) wykonuje właśnie fragment kodu synchronized(this)
{
//jakis kod
}
:-(
Przyklad:
public class watki_static {
static double a[];
static double sum;
static class watek extends Thread
{
double suma;
int x,y;
watek(int n ,int m)
{
this.x=n;
this.y=m;
}
public void run()
{
for(int i=x;i<y;i++)
{
suma+=a[i];
}
synchronized(this){
sum+=suma;
}
System.out.println("Watek " + suma);
}
}
/**
-
@param args the command line arguments
*/
public static void main(String[] args)
{
a=new double[]{1,2,3,4,5,6};
watek w1=new watek(0,3);
watek w2=new watek(3,6);w1.start();
w2.start();
try
{
w1.join();
w2.join();
}catch(InterruptedException e){}
System.out.println("Wynik " + sum);
}
}