黑马程序员技术交流社区

标题: 关于多线程的一句话不是很理解 [打印本页]

作者: 路西法    时间: 2014-1-11 20:06
标题: 关于多线程的一句话不是很理解
进程负责的是应用程序的空间的标示,线程负责的是应用程序的执行顺序
这句话好像是老毕视频里的

前半句理解不了求大神解释一下

最好把后半句的理解也说说


作者: 袁劲松    时间: 2014-1-11 20:31
我记得以前我们大学老师说过,进程有自己独立的地址空间,而多个线程可以共享空间,线程 是一个进程的不同执行路径,一个进程可以有多个线程,可以从这个线程执行,也可以从另一个线程执行
作者: 张志明    时间: 2014-1-11 20:41
进程负责的是应用程序的空间的标示,线程负责的是应用程序的执行顺序。

进程:正在进行中的程序。其实进程就是一个应用程序运行时的内存分配空间。
线程:其实就是进程中一个程序执行控制单元,一条执行路径。进程负责的是应用程序的空间的标示。线程负责的是应用程序的执行顺序。

一个进程至少有一个线程在运行。
当一个进程中出现多个线程时,就称这个应用程序是多线程应用程序。
每个线程在栈区中都有自己的执行空间,自己的方法区、自己的变量。
jvm在启动的时,首先有一个主线程,负责程序的执行,调用的是main函数。主线程执行的代码都在main方法中。

当产生垃圾时,收垃圾的动作,是不需要主线程来完成,因为这样,会出现,主线程中的代码执行会停止,会去运行垃圾回收器代码,效率较低,所以由单独一个线程来负责垃圾回收。
作者: xu6148152    时间: 2014-1-11 20:55
意思好像就是说
进程相当于一栋房子中的每个房间。
而线程
相当于这个房间中所有正在进行的事情。
作者: tf996268809    时间: 2014-1-11 21:03
你这么理解,进程就是个应用程序,线程就是一个执行路径,感觉这样还是比较好理解的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2