关于多线程你不知道的事

引言:

  世间万物均可以同时完成不少工做,例如,人体能够同时进行呼吸,呼吸的同时你也能够同时排放有毒气体,你甚至能够去思考如何上厕所才能不崩出水花,html

得到10分的好成绩。你的电脑能够同时听歌、玩联盟,或者刷网课。这种思想放在Java中称之为“并发”,咱们将并发完成的每一件事情称之为线程。java

 

 (15204493106)!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!面试

进入正题!

  在Java语言中,并发机制十分的重要,我的以为淘宝的秒杀系统就是一个很是牛皮的案例,感兴趣的小伙伴能够去看一下个人这个博客。windows

http://www.javashuo.com/article/p-vccrxtbe-nw.html。里面有对于高并发十分详细的简介。多线程

  •   以及有的时候面试官可能会问你,假如一个线程池的线程突然异常了这个线程池会怎样处理这个线程?
  •        了解JDK的 Executors 线程池吗?
  •        阿里巴巴的开发手册上为啥不容许线程池的默认实现?

这些问题小伙伴能够看看这篇文章来作更深度的剖析!并发

文档:有的线程它死了,因而它变成一道面试题...高并发

  连接:http://note.youdao.com/noteshare?id=a9d56ebb337fa5d40f1716b0ee2dcbd8&sub=BF364D61BCD046BF976F49CFFECD4DC4操作系统

  多线程的机制十分的复杂,举个恰当的例子,好比你同时阅读三本书,首先阅读第一本书的第一张,而后阅读第二本书的第一张,再阅读第三本书的第一张。回过线程

头来你在阅读第一本书的第二张。。。。。。以此类推,就体现出了多线程的复杂性。htm

线程在操做系统中是如何工做的呢?

  Java多线程在不一样的操做系统中也存在着差别,例如个人电脑使win10系统,windows系统是多任务操做系统,它是以进程为单位。一个进程是一个包含自身地址的程序

,每一个独立执行的程序都称之为进程也就是正在执行的程序。系统能够分配给每个进程一段有限的使用CPU时间(专业点叫作:CPU时间片),CPU在这段时间中执行某

个进程,而后又在下一个时间片跳到另外一个进程中去执行。因为CPU转换的较快,因此给了咱们一个进程是同时进行的假象!!!

 

下面,我用一个图更直观的代表Windows系统的执行模式:

 

 

 

 

 

 一个线程就是进程中的执行流程,一个进程中能够包含多个线程。每个线程也能够获得一小段的执行时间。这样一个进程就能够具备多个并发执行的线程啦!!

实现线程的两种方式?

  Java主要提供了两种方式实现线程

  • 继承java.lang.Thread类
  • 实现 java.lang.Runnable接口

 

线程的生命周期?

  线程的生命周期有七种状态:

  • 出生状态
  • 就绪状态
  • 运行状态
  • 等待状态
  • 休眠状态
  • 阻塞状态
  • 死亡状态

我用一个图更直观的将他表述出来:

 

 好啦今天就到这里啦!!!!

给你们看看我家的芝麻和黄妞!!!!

可爱吗???

相关文章
相关标签/搜索