java线程同步锁synchronized的认识

同步加锁的是对象,而不是代码。

一个对象中,多个线程使用同步锁。

以下代码为两个对象使用同步锁,没有效果的演示demo。

package test;

public class Foo extends Thread{
	
	private int val; 
	
	public Foo(int v){ 
		val = v; 
	} 
	
	public synchronized void printVal(int v){ 
//		while(true) 
		for (int i = 0; i < 10; i++) {
			System.out.println(v); 
		}
	} 
	
	public void run(){
		printVal(val); 
	} 
	
}
package test;

public class SyncTest {
	public static void main(String args[]) {
		Foo f1 = new Foo(1);
		f1.start();
		Foo f2 = new Foo(3);
		f2.start();
	}
}



阅读更多
个人分类: java开发
上一篇如何看环境变量是否配置成功
下一篇java实现冒泡排序
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭