线程

什么是线程

先来说一下什么是进程,进程时一个程序的过程,负责把资源整合到一起,是一个资源单位

而线程是CPU的执行单位,一个进程内默认就会有一个控制线程,该控制线程可以执行代码从而创建新的线程
该控制线程的执行周期就代表改进程的执行周期。一个程序运行首先要申请一个内存空间这就开启了一个进程,

线程就是位于进程空间内的运行的过程,是执行的单位。主线程的结束就以为着进程结束了。

控制线程的作用就是执行代码,是进程一运行就存在的。

 

主进程和主线程的结束

当一个主进程开启了子进程,当主进程运行完毕,而子进程没有运行完毕,这是主进程不会关闭,他会等待子进程运行完毕,回收资源。

当一个主线程开启了子线程,当主线程运行完毕,而子线程没有运行完毕,这时主线程也不会关闭,原因是主线程关闭意味着进程关闭,进程关闭是必须等进程中所有线程都运行完的

 

 内存空间

多进程中子进程是复制了主进程的代码,进程之间内存隔离,子进程修改参数并不会影响主进程。

多线程是在一个进程中开启多个线程,线程之间资源共享。这些线程共享一个进程的地址空间,也共享一个进程中的资源。这些线程的关系是并列的,一个线程修改进程的参数,其他进程都会受影响。

 

线程于进程的区别

 

1、线程的创建开销小于进程,创建速度快(不用向操作系统申请资源,与其他线程共享一个资源)
2、同一进程下的多个线程共享该进程的地址空间

 

posted @ 2017-12-01 16:51  瓜田月夜  阅读(105)  评论(0)    收藏  举报