同步线程的一个实例
来源:互联网 发布:长时间录屏软件 编辑:程序博客网 时间:2024/09/21 09:20
package com.demo.thread;/** * 存钱线程 * @author zl * */public class SaveThread extends Thread{ private BankBook bankBook; private double saveMomey; @Override public void run() { saveSomeMomey(saveMomey); } public SaveThread(String name,double momey,BankBook bb) { super(name); this.saveMomey = momey; this.bankBook = bb; } /** * 存钱 * @param someMomey */ public synchronized void saveSomeMomey(double someMomey){ System.out.println("查询的账户余额为"+bankBook.getTotalMomey()+","+Thread.currentThread().getName()+"开始存钱"); bankBook.setTotalMomey(bankBook.getTotalMomey()+someMomey); System.out.println(Thread.currentThread().getName()+"成功存钱"+someMomey+"元,目前账户余额为"+bankBook.getTotalMomey()); }}class BankBook { private double totalMomey; public BankBook(double momey) { this.totalMomey = momey; } public double getTotalMomey() { return totalMomey; } public void setTotalMomey(double totalMomey) { this.totalMomey = totalMomey; }}
package com.demo.thread;/** 1. 同步线程的测试 2. @author zl 3. */public class SynchronizedThreadTest { public static void main(String[] args) { BankBook bb = new BankBook(500); SaveThread s1 = new SaveThread("妈妈", 200.00,bb); SaveThread s2 = new SaveThread("爸爸", 100.00,bb); SaveThread s3 = new SaveThread("儿子", 300.00,bb); SaveThread s4 = new SaveThread("女儿", 400.00,bb); s1.start(); s2.start(); s3.start(); s4.start(); }}
测试结果为:
去掉关键字synchronized 后的测试结果为:
0 0
- 同步线程的一个实例
- 自己的一个线程同步通讯的实例
- 线程同步方法 - 互斥锁的使用实例
- 线程同步实例
- 线程同步实例
- VC 线程同步实例
- java 线程同步实例
- java线程同步实例
- 线程同步问题实例
- Java线程同步实例
- 一个数据线程间同步的适配器
- C#中的一个线程同步的例子
- 20、线程同步的一个小问题
- 一个线程同步类
- 线程 线程池 线程同步 实例
- 一个完整的线程池的实例
- Linux C 线程同步实例
- Servlet线程同步实例研究
- PHP-成功配置imagick
- JavaScript 事件处理程序
- 算法笔记_062-蓝桥杯练习 最小乘积(基本型)(Java)
- cocos2d 字符串库打包问题2.X和3.X
- XlistView结合AsyncTask展示数据
- 同步线程的一个实例
- ext4 目录文件 ext4_dir_operations
- 3.Javascript基础-变量和数据类型
- 修改 UIImagePickerController 选择照片状态栏颜色及导航栏按钮标题字体颜色
- java语言介绍及特点分析(萌新入门须知内容)
- Lucene索引库查询(五)
- 记录一下conda,brew,pip的安装位置
- HTML+CSS+JS漫谈(一)
- ext4 文件inode操作ext4_file_inode_operations