线程互斥
来源:互联网 发布:天津基础教育网络平台 编辑:程序博客网 时间:2024/04/29 20:53
线程同步:synchronized关键字加锁
package com.thread.learn;public class TraditionalThreadSynchronized {public static void main(String[] args) {new TraditionalThreadSynchronized().init();}private void init(){Outputer outputer = new Outputer();new Thread(new Runnable(){@Overridepublic void run() {while(true){try {Thread.sleep(10);} catch (InterruptedException e) {e.printStackTrace();}outputer.output1("AAAAA");}}}).start();new Thread(new Runnable(){@Overridepublic void run() {while(true){try {Thread.sleep(10);} catch (InterruptedException e) {e.printStackTrace();}outputer.output1("BBBBB");}}}).start();}static class Outputer{public void output1(String name){int len = name.length();synchronized (this) {for(int i = 0;i<len;i++){System.out.print(name.charAt(i));}System.out.println();}}public synchronized void output2(String name){int len = name.length();for(int i = 0;i<len;i++){System.out.print(name.charAt(i));}System.out.println();}public void output3(String name){int len = name.length();synchronized (Outputer.class) {for(int i = 0;i<len;i++){System.out.print(name.charAt(i));}System.out.println();}}public static synchronized void output4(String name){int len = name.length();for(int i = 0;i<len;i++){System.out.print(name.charAt(i));}System.out.println();}}}
实现同步前提:同一个对象,同一把锁
0 0
- 线程同步互斥
- 线程互斥
- 线程互斥
- 线程互斥
- 线程的互斥
- delphi 线程互斥
- 互斥量,线程互斥
- 线程 互斥
- Java 线程互斥
- 线程的互斥
- Java 线程互斥
- 线程互斥
- 什么是线程互斥
- 线程的互斥
- 【Linux】线程互斥
- linux 线程互斥
- 线程的互斥
- 线程互斥 Synchronized
- 自定义控件--快速索引(三)
- 我的选择-写于2017年3月22日凌晨
- struts2.3.15.3在myeclipse2017的bug
- 译文 | 批量归一化:通过减少内部协变量转移加速深度网络训练
- LPC4357学习笔记(一)GPIO口的使用
- 线程互斥
- CCCC训练练习题-矿工安全生产(求点割集)
- bash配置文件读取流程
- 228. Summary Ranges
- 剑指offer2:实现Singleton模式
- T解 POJ-2411 Mondriaan's Dream [轮廓线DP] || [状压DP]
- 【php】windows搭建apache、php、mysql环境
- Sublime 3 下安装 Package Control
- Linux创建配置使用SVN,可远程同步,可实时同步到web目录中