![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
香隅人
这个作者很懒,什么都没留下…
展开
-
多线程(1)-概念与原理
理解进程与线程进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。 线程是指进程中的一个执行流程,一个进程中可以运行多个线程。线程总是属于某个进程,进程中的多个线程共享进程的内存。 总结:进程是线程的集合,线程是进程的执行路径。对于线程的分类用户线程和守候线程 当所有用户线程执行完毕的时候,JVM自动关闭。但是守候线程却不独立于JVM,守候原创 2016-04-13 13:16:56 · 241 阅读 · 0 评论 -
多线程(2)-java线程的创建与启动
java线程的创建(1)定义一个类继承于Thread,直接new一个实例即可 (2)定义一个类实现Runnable接口,new一个Thread实例,传入Runnable Thread thread = new Thread(new Runnable()); (3)重写run()方法。java线程的启动在线程的Thread对象上调用start()方法,而不是run()或者别的方法。在调用st原创 2016-04-13 13:40:32 · 283 阅读 · 0 评论 -
多线程(3):线程的状态
线程状态总的可分为五大状态:分别是生、死、可运行、运行、等待/阻塞/睡眠1、新状态:线程对象已经创建,还没有在其上调用start()方法。2、可运行状态:当线程有资格运行,但调度程序还没有把它选定为运行线程时线程所处的状态。当start()方法调用时,线程首先进入可运行状态。在线程运行之后或者从阻塞、等待或睡眠状态回来后,也返回到可运行状态。也可能进入死亡状态。3、运行状态:线程调度程序从可运行池中原创 2016-04-13 13:58:27 · 268 阅读 · 0 评论 -
多线程(4):阻止线程运行的几种常见方式
阻止线程运行也就是让线程从运行状态离开 离开到哪? 死亡or睡眠/阻塞/等待(1)调用Thread.sleep():使当前线程睡眠至少多少毫秒(尽管它可能在指定的时间之前被中断)。(2)调用Thread.yield():不能保障太多事情,尽管通常它会让当前运行线程回到可运行性状态,使得有相同优先级的线程有机会执行。(3)调用join()方法:保证当前线程停止执行,直到该线程所加入的线程完成为止。原创 2016-04-13 14:06:13 · 1909 阅读 · 0 评论