Java中的多线程

Posted 程序员庆哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中的多线程相关的知识,希望对你有一定的参考价值。

1、线程和进程的区分

一个进程中包含多个线程,一个进程就相当于一个应用程序,一个应用程序底层就是cpu来运行的,比如我们的电脑同时打开了多个应用,表面看来像是在同时运行,实际上在同一时间只运行了一个应用程序,只不过cpu的运行速度非常快,会进行高速切换,让我们觉得是在同时进行。

最经典的一个例子就是迅雷了,我们电脑打开迅雷相当于开了一个进程,当我们使用迅雷下载东西的时候,比如说,下载两部电影,那么在迅雷中就存在两个不同的执行路径,也就是有两个线程在同时做下载工作。

所以,进程包含线程,相当于所有线程的集合。一个线程就是一个执行路径。

为什么要用多线程?

多线程的好处就是提高程序的效率。但是可能会影响性能。

main是主线程,我们创建的线程叫做子线程,如果说一个项目中肯定有一个线程,那么这个线程就是主线程了。

对于这个问题,到底该怎么理解或者说区分线程和进程的概念,再举一个非常贴切的例子,我们大多数人都用过扣扣吧,我们打开一个扣扣,其实就是开启了一个进程,然后我们发送一段文字,那就是开启了一个线程,我们再发送一天语音,那就是又开启了一个线程,那么在这个扣扣的进程中就有发文字和语言两个线程了,当然,可能还有其他的线程!

在知乎上有这么一个帖子,就是区分线程和进程的额,回答的也不少,可以看看

线程和进程的区别是什么?

那么,关于进程和线程的区别问

以上是关于Java中的多线程的主要内容,如果未能解决你的问题,请参考以下文章

Java中的多线程

java中的多线程

java中的多线程

Java中的多线程

JAVA中的多线程

编程思想之多线程与多进程——Java中的多线程