Java线程
来源:互联网 发布:适合家政的软件 编辑:程序博客网 时间:2024/06/14 09:40
保证三个线程的顺序执行,可以用join方法,等待线程的结束
t1.join();//等待线程t1执行完再执行t2
package test;
import java.util.ArrayList;
import java.util.List;
public class ThreadUnsafe {
public static List<Integer> numberList=new ArrayList<Integer>();
public static class AddToList implements Runnable{
int startnum=0;
public AddToList(int startnumber){
startnum=startnumber;
}
@Override
public void run() {
// TODO Auto-generated method stub
int count=0;
while(count<100){
//System.out.print(","+startnum);
numberList.add(startnum);
startnum+=2;
count++;
if(count%10==0){
//System.out.println();
}
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
final Thread t1=new Thread(new AddToList(0));
final Thread t2=new Thread(new AddToList(1));
t1.start();
t2.start();
Thread t3=new Thread(new Runnable(){
@Override
public void run() {
// TODO Auto-generated method stub
try {
t1.join();
t2.join();
System.out.println("开始");
for(int i=0;i<numberList.size();i++){
Integer j=numberList.get(i);
System.out.print(","+j);
if(i%10==0){
System.out.println();
}
}
System.out.println("结束");
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
);
t3.start();
}
}
线程其他:
start();//启动线程
getId();//获得线程ID
getName();//获得线程名字
getPriority();//获得优先权
isAlive();//判断线程是否活动
isDaemon();//判断是否守护线程
getState();//获得线程状态
sleep(long mill);//休眠线程
join();//等待线程结束
yield();//放弃cpu使用权利
interrupt();//中断线程
currentThread();//获得正在执行的线程对象
- Java线程:什么是线程
- Java线程:线程池
- java线程--线程退出
- JAVA-线程/线程锁
- Java线程:什么是线程
- Java线程:线程中断
- Java线程:线程状态
- Java线程: 线程调度
- Java线程:线程交互
- java--线程--线程池
- java 线程
- Java线程
- java线程
- java线程
- Java线程
- Java线程
- java线程
- JAVA 线程
- java动态代理
- Redis核心知识——高级篇
- [USACO5.1]圈奶牛Fencing the Cows(凸包模板)
- QT算数表达式求值
- es6 入门(四):Set和Map数据解构
- Java线程
- 我遇到过的错误,异常
- 观看ThinkPHP感受
- 【技术研究】 CodeReview初识
- 原生JS实现轮播图的几种方式
- HDU 6098 Inversion
- 使用DOM方法解析xml文件
- 数据库索引及其使用
- Redis核心知识——命令列表