![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java线程
__无极__
天地不仁,以万物为刍狗
展开
-
java线程第五课:线程中断
线程的中断 在很多时候,我们需要在一个线程中调控另一个线程,这时我们就要用到线程的中断。用最简单的话也许可以说它就相当于播放机中的暂停一样,当第一次按下暂停时,播放器停止播放,再一次按下暂停时,继续从刚才暂停的地方开始重新播放。而在Java中,这个暂停按钮就是Interrupt()方法。在第一次调用interrupt()方法时,线程中断;当再一次调用interrupt()方法时,线...原创 2019-05-21 15:20:19 · 306 阅读 · 0 评论 -
java线程第二课:线程的多种状态
一. 线程状态类型1. 新建状态(New):新创建了一个线程对象。2. 就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权。3. 运行状态(Running):就绪状态的线程获取了CPU,执行程序代码。4. 阻塞状态(Blocked):阻塞状态是线程因为某种原因放弃CPU使用权,暂时停止运行。直到...转载 2019-05-21 15:21:14 · 256 阅读 · 0 评论 -
java线程第四课:线程的等待通知机制
在有些时候,我们需要在几个或多个线程中按照一定的秩序来共享一定的资源。例如生产者--消费者的关系,在这一对关系中实际情况总是先有生产者生产了产品后,消费者才有可能消费;又如在父--子关系中,总是先有父亲,然后才能有儿子。然而在没有引入等待通知机制前,我们得到的情况却常常是错误的。这里我引入《用线程获得强大的功能》一文中的生产者--消费者的例子:/* =================...原创 2019-05-21 15:20:28 · 270 阅读 · 0 评论 -
java线程第一课: 什么是线程
一、 什么是线程 几乎每种操作系统都支持进程的概念 ―― 进程就是在某种程度上相互隔离的、独立运行的程序。 线程化是允许多个活动共存于一个进程中的工具。大多数现代的操作系统都支持线程,而且线程的概念以各种形式已存在了好多年。Java 是第一个在语言本身中显式地包含线程的主流编程语言,它没有把线程化看作是底层操作系统的工具。 有时候,线程也称作轻量级进程。就象进程一样,线程在程序中原创 2019-05-21 15:21:25 · 244 阅读 · 0 评论 -
java线程第六课:同步锁Lock
import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Future;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.Re...转载 2019-05-21 15:18:42 · 282 阅读 · 0 评论 -
java线程第七课:线程池
线程池工作原理 在什么情况下使用线程池? 1.单个任务处理的时间比较短 2.将需处理的任务的数量大 使用线程池的好处: 1.减少在创建和销毁线程上所花的时间以及系统资源的开销 2.如不使用线程池,有可能造成系统创建大量线程而导致消耗完系统内存以及”过度切换”。 为什么要用线程池以及工作原理? 诸如 Web 服务器、数据库服务器、文件服务器或原创 2019-05-21 15:20:10 · 210 阅读 · 0 评论 -
Java线程第三课:线程的两种创建方式
1、通过实现Runnable接口线程创建(1).定义一个类实现Runnable接口,重写接口中的run()方法。在run()方法中加入具体的任务代码或处理逻辑。(2).创建Runnable接口实现类的对象。(3).创建一个Thread类的对象,需要封装前面Runnable接口实现类的对象。(接口可以实现多继承)(4).调用Thread对象的start()方法,启动线程示例...原创 2019-05-21 15:21:02 · 242 阅读 · 0 评论