通过在方法声明中加入synchronized关键字,可以声明同步方法
public synchronized voidfetchMoney(){ synchronized(this){ ...} }
synchronized方法控制对对象成员的访问,每个对象对应一把锁,
每个synchronized方法都必须获得调度该方法的对象才能执行,
本方法一旦执行就独享该锁,直到从本方法中返回才释放,然后
被阻塞的线程可以获得锁而投入运行状态,这种同步机制确保了
同一时刻对于同一类的不同对象,synchronized方法成员至少有
一个处于运行状态,避免了对对象成员的访问冲突:
package com.thread.util; import java.util.Scanner; public class threadDom1 implements Runnable{ private static int y_e=1000; public void run(){ fetchMoney(); } public synchronized void fetchMoney(){ System.out.println("输入取款金额:"); Scanner scan=new Scanner(System.in); int fMoney=scan.nextInt(); if(fMoney<=y_e){ y_e-=fMoney; System.out.println("您的余额:"+y_e); } else System.out.println("您的余额不足:"); try{ Thread.sleep(1000); }catch (Exception e){} } public static void main(String[] args){ threadDom1 target=new threadDom1(); new Thread(target).start(); new Thread(target).start(); } }
相关推荐
java线程同步java线程同步java线程同步
java线程同步实例,哲学家思考的代码实现,应该是一个比较好的例子
java线程同步
java线程同步的例子.doc java线程同步的例子.doc
Java 线程同步调用的使用,以及同步方法的调用!
JAVA100例之实例65 JAVA线程同步
里面讲述了关于java线程同步的信息·······
java 线程同步 ,使用java语言实现
Java线程同步原理探析
Java线程同步例子.pdf
java线程同步的详细讲解,有利于解开一些困扰。
java线程同步的例子.pdf
java线程同步[归纳].pdf
java线程同步的例子[文].pdf
关于线程同步 synchronize,需要牢牢记住的第一点是:线程同步就是线程排队。同步就是排队。线程同步的目的就是避免线程“同步”执行。
Java多线程同步论文.doc