启动8个线程:(应用前提示:看下面示例)
主方法:
public static void main(String[] args){
for(int i=0;i<8;i++){
DataInit di = new DataInit(i);
Thread t = new Thread(di);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
t.start();
}
}
锁操作:
public class DataInit implements Runnable{
private int i;
public DataInit(int i){
this.i=i;
}
public synchronized void syninit(int i){
try {
System.out.println("start-----"+i);
Thread.sleep(3000);
System.out.println("end-----"+i);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Override
public void run() {
this.syninit(i);
}
这样synchronized失去作用
示例自己理解吧
参考网页:
http://blog.csdn.net/zhgflx/article/details/4485848
http://blog.csdn.net/blackartanan/article/details/3839006
Synchronized与Lock
猜你喜欢
转载自lf6627926.iteye.com/blog/1328598
今日推荐
周排行