博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Thread
阅读量:4354 次
发布时间:2019-06-07

本文共 1771 字,大约阅读时间需要 5 分钟。

概念 进程:正在运行的程序,一个进程至少有一个线程. 线程:正在执行程序的最小单元,线程之间是互相独立的. 线程的分类:     1.主线程     2.用户线程     3.守护线程(GC等) 线程的状态:     创建线程---就绪状态---执行状态---等待/挂起---异常/死亡 实现线程的过程1:     1.描述一个类,继承父类Thread     2.重写run方法     3.new一个线程对象 调用start()方法 让线程就绪
//1.描述一个类 继承父类Threadpublic class MyThread extends Thread{    @Override    //2.重写run方法    public void run() {        for (int i = 1; i <10; i++) {            try {                Thread.currentThread().sleep(2000);                System.out.println(MyThread.currentThread().getName()+"第"+i+"次");            } catch (InterruptedException e) {                e.printStackTrace();            }        }    }}
实现线程的过程2(不能继承Thread的情况):     1.描述一个类,实现接口Runnable     2.重写run方法     3.new一个对象,构建线程对象,调用start()方法 让线程就绪
//    1.描述一个类,实现接口Runnablepublic class MyThread2 implement Runable{    @Override//        2.重写run方法    public void run() {        for (int i = 1; i <10; i++) {            try {                Thread.currentThread().sleep(7000);                System.out.println(MyThread.currentThread().getName()+"第"+i+"次");            } catch (InterruptedException e) {                // TODO Auto-generated catch block                e.printStackTrace();            }        }    }}
 
public class TestThread {    public static void main(String[] args) {        //3.new一个线程对象 调用start()方法 让线程就绪        MyThread mythread=new MyThread();        mythread.start();        //3.new一个对象,构建线程对象,调用start()方法 让线程就绪        MyThread2 mythread2=new MyThread2();        Thread t=new Thread(mythread2,"线程的名称,可以不写取默认");        t.start();    }}

 这周看了下lambda表达式,更简单的是现实

Thread t2 =new Thread(() -> System.out.println(Thread.currentThread().getName()));t2.start();

如果相等几个异步的进程全部执行完以后在向下执行,就用到join()方法

t2.join(); //大概率应该是使用循环

 

 

 

 

转载于:https://www.cnblogs.com/ysmdbk/p/11236403.html

你可能感兴趣的文章
Android系统容量检测 —— Environment 和StatFs
查看>>
x-pack-5.6.10激活教程
查看>>
pat1078. Hashing (25)
查看>>
第十三周学习进度表
查看>>
java JDBC 数据库链接
查看>>
Wcf扩展
查看>>
2018.12.14 codeforces 932E. Team Work(组合数学)
查看>>
浅析C#中的Thread ThreadPool Task和async/await
查看>>
adb command not found / abd' 不是内部或外部命令,也不是可运行的程序 或批处理文件。最简易修改...
查看>>
java操作数据库的事务支持
查看>>
前端学习笔记 - Css初级篇
查看>>
Java8简明学习之新时间日期API
查看>>
The way to Go(7): 变量
查看>>
17秋 软件工程 第六次作业 Beta冲刺 Scrum1
查看>>
Javascript 解析字符串生成 XML DOM 对象。
查看>>
NOI2013 矩阵游戏 【数论】
查看>>
【算法题】找出一个整型数组里两个不同数字
查看>>
iOS开发--网络下载
查看>>
【第七次JAVA课,java语法基础】课件总结
查看>>
一些思维的碎片(一)
查看>>