java线程同步锁synchronized的认识

原创 2015年07月07日 15:34:17

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

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

以下代码为两个对象使用同步锁,没有效果的演示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多线程简析——Synchronized(同步锁)、Lock以及线程池

Java多线程 Java中,可运行的程序都是有一个或多个进程组成。进程则是由多个线程组成的。 最简单的一个进程,会包括mian线程以及GC线程。 线程的状态 线程状态由以下一张网上图片来说明: 在...
  • yangzhaomuma
  • yangzhaomuma
  • 2016年04月25日 00:56
  • 17198

Java多线程--同步与死锁:synchronized;等待与唤醒:wait、notify、notifyAll;生命周期

1、问题的引出 class MyThread implements Runnable{ private int ticket = 5 ; // 假设一共有5张票 public void ru...
  • waldmer
  • waldmer
  • 2013年10月12日 09:34
  • 7503

【多线程】线程中的同步锁synchronized

当多个线程同时执行时,由于cpu是随机分片的,所以,一个线程在执行过程中被另一个线程打断的情况是经常发生的。 这在某些情况下是会影响到正常的程序的输出结果的。比如银行转账一个人的账户在转账时是不能允许...
  • wangyy130
  • wangyy130
  • 2016年07月25日 21:23
  • 1062

Java 内部类,多线程中Synchronized与wait,notify的使用

工作内容: 1.成员内部类    与成员方法,属性的访问权限一致 2.静态内部类    修饰符 stactic 类名{...} 3.匿名内部类    new 类名()/接口名(重写接口方法) 4.局...
  • yingtian648
  • yingtian648
  • 2016年07月22日 08:59
  • 543

synchronized、锁、多线程同步的原理是咋样

先综述个结论: 一般说的synchronized用来做多线程同步功能,其实synchronized只是提供多线程互斥,而对象的wait()和notify()方法才提供线程的同步功能。 ...
  • jks456
  • jks456
  • 2016年03月05日 21:54
  • 2538

synchronized 同步锁(java)实例解析

0引言     在多线程应用场景中,同步锁是一种非常重要的机制,例如:ID号的分配,多个客户端分别与服务端建立连接,客户端并发请求的情况下,为提升吞吐量,服务端一般采用多线程处理请求,若无同步锁机制...
  • Jin_Kwok
  • Jin_Kwok
  • 2017年07月09日 22:02
  • 585

java 同步锁(synchronized)的正确使用姿势

关于线程安全,线程锁的使用
  • AndroFarmer
  • AndroFarmer
  • 2017年04月05日 00:58
  • 1591

深入浅出Java并发包—锁(Lock)VS同步(synchronized)

今天我们来探讨一下Java中的锁机制。前面我们提到,在JDK1.5之前只能通过synchronized关键字来实现同步,这个前面我们已经提到是属于独占锁,性能并不高,因此JDK1.5之后开始借助JNI...
  • wxyFighting
  • wxyFighting
  • 2013年12月27日 18:48
  • 2725

java 同步锁(synchronized)

java 同步锁(synchronized)
  • lianqiangjava
  • lianqiangjava
  • 2013年10月12日 15:30
  • 70001

线程中的同步代码块synchronized、同步方法和同步锁Lock

在学习线程的时候,因为线程的调度具有不确定性,所以银行取钱问题、多个窗口售卖火车票问题都是反应多线程的优越性以及不确定性。当程序中有多个并发线程在进入一个代码块中并且修改其中参数时,就很有可能引发线程...
  • sinat_15274667
  • sinat_15274667
  • 2015年11月01日 17:35
  • 3468
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java线程同步锁synchronized的认识
举报原因:
原因补充:

(最多只允许输入30个字)