join
来源:互联网 发布:美容美体教学饮软件 编辑:程序博客网 时间:2024/05/21 11:27
package com.icss.biz.ppt;
/**
* thinking in java p597
*/
public class JoinTest{
public static void main(String[] args) {
Sleeper sleeper = new Sleeper();
sleeper.start();
Joiner joiner = new Joiner(sleeper);
joiner.start();
}
}
class Sleeper extends Thread
{
public void run() {
System.out.println("Sleeper线程id=" + Thread.currentThread().getId() + " start run");
try {
for(int i=0;i<50;i++){
Thread.sleep(100);
System.out.println("线程" + Thread.currentThread().getId() + "---i=" + i);
}
} catch (Exception e) {
// TODO: handle exception
}
System.out.println("Sleeper线程id=" + Thread.currentThread().getId()+ " end");
}
}
class Joiner extends Thread
{
private Sleeper m_sleeper;
public Joiner(Sleeper sleeper ){
m_sleeper = sleeper;
}
public void run() {
System.out.println("线程id=" + Thread.currentThread().getId()+ " start run");
try {
for(int i=0;i<50;i++){
Thread.sleep(100);
System.out.println("线程" + Thread.currentThread().getId() + "---k=" + i);
if(i==5){
System.out.println("sleeper准备加入到当前线程线程" + Thread.currentThread().getId());
m_sleeper.join();//sleeper加入到当前线程,当前线程被阻塞,等待sleeper运行结束后这个线程才继续运行
} m-sleeper.join()加入之后呢执行m_sleeper()的线程
}
} catch (Exception e) {
// TODO: handle exception
}
System.out.println("线程id=" + Thread.currentThread().getId()+ " end");
}
}
/**
* thinking in java p597
*/
public class JoinTest{
public static void main(String[] args) {
Sleeper sleeper = new Sleeper();
sleeper.start();
Joiner joiner = new Joiner(sleeper);
joiner.start();
}
}
class Sleeper extends Thread
{
public void run() {
System.out.println("Sleeper线程id=" + Thread.currentThread().getId() + " start run");
try {
for(int i=0;i<50;i++){
Thread.sleep(100);
System.out.println("线程" + Thread.currentThread().getId() + "---i=" + i);
}
} catch (Exception e) {
// TODO: handle exception
}
System.out.println("Sleeper线程id=" + Thread.currentThread().getId()+ " end");
}
}
class Joiner extends Thread
{
private Sleeper m_sleeper;
public Joiner(Sleeper sleeper ){
m_sleeper = sleeper;
}
public void run() {
System.out.println("线程id=" + Thread.currentThread().getId()+ " start run");
try {
for(int i=0;i<50;i++){
Thread.sleep(100);
System.out.println("线程" + Thread.currentThread().getId() + "---k=" + i);
if(i==5){
System.out.println("sleeper准备加入到当前线程线程" + Thread.currentThread().getId());
m_sleeper.join();//sleeper加入到当前线程,当前线程被阻塞,等待sleeper运行结束后这个线程才继续运行
} m-sleeper.join()加入之后呢执行m_sleeper()的线程
}
} catch (Exception e) {
// TODO: handle exception
}
System.out.println("线程id=" + Thread.currentThread().getId()+ " end");
}
}
阅读全文
0 0
- JOIN
- join
- join
- Join
- join
- join
- join
- join
- join
- join
- join
- JOIN
- Join
- join
- join()
- join
- join
- join
- Servlet(1)—Servlet容器tomcat和HTTP协议
- java中的值传递和引用传递问题
- Could not find result map java.lang.String异常
- 图形绘制 QPainter
- Android----- 改变图标原有颜色 和 搜索框
- join
- Scanners Box
- Python在列表,字典,集合中根据条件筛选数据
- GOOGLE SDE 电面面经
- Ubuntu 16.04 安装 unity
- [c/c++语言入门篇]--位运算
- this package import
- HDU 1242 Rescue(DFS入门)
- 每日区块链:Geth发布软件更新,为以太坊“拜占庭”硬分叉做准备;区块链会如何改变能源领域的未来?