新手--线程同步的困惑
当几个线程共享 某个对象的时候 需要同步来解决
我这样理解是不是正确的啊??
但是下面的代码,却不能实现同步,请老大赐教
class Printer
{
synchronized void print(char c)
{
for (int i = 0; i<10; i++)
System.out.print (c);
}
}
class PrintThread extends Thread
{
char c;
Printer p;
PrintThread(Printer p, char c)
{
this.p=p;
this.c=c;
}
public void run()
{
for (int i = 0; i<10; i++)
{
p.print(c);
System.out.println ();
}
}
}
class Demo2
{
public static void main(String args[])
{
Printer p = new Printer();
PrintThread p1 = new PrintThread(p,'A');
PrintThread p2 = new PrintThread(p,'B');
p1.start();
p2.start();
}
}