两个线程交叉打印(最简单的)
来源:互联网 发布:centos挂载磁盘 编辑:程序博客网 时间:2024/04/29 03:30
A:线程:
package Thread.a.b.turn;
public class ThreadA implements Runnable {
private ThreadBusiness treadMian =null;
public ThreadA(ThreadBusiness threadMain ){
this.treadMian=threadMain;
}
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<10;i++){
treadMian.printA();
}
}
}
B线程:
package Thread.a.b.turn;
public class ThreadB implements Runnable {
private ThreadBusiness treadMian =null;
public ThreadB(ThreadBusiness threadMain ){
this.treadMian=threadMain;
}
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<10;i++){
treadMian.printB();
}
}
}
业务逻辑:
package Thread.a.b.turn;
public class ThreadBusiness {
public boolean flag=true;
public synchronized void printA(){
if(!flag){
try {
wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
flag=false;
System.out.println("A");
notify();
}
public synchronized void printB(){
if(flag){
try {
wait();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
flag=true;
System.out.println("B");
notify();
}
}
测试:
package Thread.a.b.turn;
public class TestThreadAB {
public static void main(String args[]){
//先让A线程打印,后让B线程打印
ThreadBusiness threadMain = new ThreadBusiness();
Thread a = new Thread(new ThreadA(threadMain),"A");
Thread b = new Thread(new ThreadB(threadMain),"B");
a.start();
b.start();
}
}
希望大家赐教。
- 两个线程交叉打印(最简单的)
- 两个线程的交替打印
- 最简单的行列转换(交叉表)实例
- 最简单的打印设置
- 最简单的WEB打印(IE WebBrowder控件)
- 最简单的远程线程
- 最简单的线程池
- c# 最简单的线程
- 一个最简单的线程
- 最简单的OJ题目(求两个整数之和)
- 最简单的IE打印设置
- 最简单的两个ViewPager的联动
- 两个线程交替打印ABABAB
- 两个线程交替打印ABABAB
- 两个线程交替打印ABCDEF
- 最简单的线程结构(自学笔记)
- 两个线程A和B,任务都是打印当前时间,要求编码实现:线程A和B同时启动后,以先A后B的方式任务交叉执行10次。
- 两个线程A和B,任务都是打印当前时间,要求编码实现:线程A和B同时启动后,以先A后B的方式任务交叉执行10次。
- PAT 1011 World Cup Betting
- 1、uc/os:进程、线程、(void*)0 的简单解释
- 土地划分(计算几何——线段相交)
- 背景音乐
- 7月4日 Excel Solver使用
- 两个线程交叉打印(最简单的)
- 解决部分网站无法访问的问题
- Spring MVC 学习2:一个非常简单的Spring MVC项目
- hive sql 查询 Child Error 错误追究
- 关于Struts2
- c++文件读写
- How to install Pandoc on Ubuntu14.04 64 bit
- 屌丝为什么要戴手表
- android定义dialog