synchronized同步机制的应用
来源:互联网 发布:2015十大网络用语 编辑:程序博客网 时间:2024/06/05 00:58
public class TextThread {/** * 该程序是为了说明synchronized锁住对象的条件, * 即同步的两个或多个线程必须是对同一对象上锁 * (不管是this表示的当前对象,还是其他定义的 * 对象如String对象等) * 如果每个线程新建不同的对象,然后对不同对象上锁 * 如TxtThread tt0 = new TxtThread();TxtThread tt1 = new TxtThread(); * 然后对当前对象this上锁,将会失效。 */public static void main(String[] args) {// TODO 自动生成方法存根TxtThread tt0 = new TxtThread();// TxtThread tt1 = new TxtThread();// TxtThread tt2 = new TxtThread();// TxtThread tt3 = new TxtThread();tt0.flag = false;new Thread(tt0).start();TxtThread tt1 = new TxtThread();//tt1.flag = true;new Thread(tt0).start();// new Thread(tt0).start();// new Thread(tt0).start();// new Thread(tt1).start();// new Thread(tt2).start();// new Thread(tt3).start();}}class TxtThread implements Runnable {static String str = new String();boolean flag;public void run() {if (flag == true) {for (int i = 1; i <= 20; i++) {try {Thread.sleep(10);} catch (Exception e) {e.getMessage();}System.out.println("鎖之外");}synchronized (this) {int num = 100;while (num > 0) {try {Thread.sleep(10);} catch (Exception e) {e.getMessage();}System.out.println(Thread.currentThread().getName()+ "this is 模块1 " + num--);}}}if (flag == false) {synchronized (this) {int num = 100;while (num > 0) {try {Thread.sleep(10);} catch (Exception e) {e.getMessage();}System.out.println(Thread.currentThread().getName()+ "this is模块2 " + num--);}}}}}
0 0
- synchronized同步机制的应用
- java的同步机制synchronized
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- ava的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- Java的synchronized关键字:同步机制总结
- jedis基本介绍
- STK和Matlab编程规范
- php 写session
- 234. Palindrome Linked List
- Android 开发之旅——Android Studio2 安装 GO!
- synchronized同步机制的应用
- string::substr
- 初学Zynq与Vivado
- 【HiveETL】物流行业 -- 订单跟踪、SLA
- Android自定义View(二)
- Linux/UNIX 定时任务 cron 详解
- 死锁示例程序
- Java基础之(一) 变量
- zookeeper轻松入门