您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 子进程 >

linux 中进程的子进程与的线程有什么区别

发布时间:2019-07-05 03:07 来源:未知 编辑:admin

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部haowawa586 的例子不好, switch case语句和进程线程的概念没关系.我拿Windows举例子吧, 因为Linux的内核好像是没有线程概念的.进程和线程的区别在于粒度不同, 进程之间的变量(或者说是内存)是不能直接互相访问的, 而线程可以, 线程一定会依附在某一个进程上执行.

  我举个例子, 你在Windows下开一个IE浏览器, 这个IE浏览器是一个进程.

  你用浏览器去打开一个pdf, IE就去调用Acrobat去打开, 这时Acrobat是一个独立的进程, 就是IE的子进程.

  而IE自己本身同时用同一个进程开了2个网页, 并且同时在跑两个网页上的脚本, 这两个网页的执行就是IE自己通过两个线程实现的.

  值得注意的是, 线程仍然是IE的内容, 而子进程Acrobat严格来说就不属于IE了, 是另外一个程序.

  追问那我可不可以这样理解,父进程创建了一个子进程,只要给这个子进程分配一定的任务,他们从此就没有关系了 。。。。追答也不能这么说从此就没关系了, 父进程还是可以通过和子进程通信来获得一些信息的. 拿上面的例子来说, IE可以通过一些进程间通信的接口来知道Acrobat是否顺利的把pdf打开了之类的信息. 但有一点我觉得你的理解基本正确, 就是父进程和子进程是独立的. 假如IE开了一个病毒子进程, 子进程不听话, 父进程也没什么特别的办法, 除了向系统申请去关闭它之外.区分子进程和线程很简单:一个独立程序的运行称为一个进程, 在进程里并发执行的不同部分称为线程. 由这个进程引发的另外的独立程序运行为这个进程的子进程. (基本上就是这样, 更加严格的定义建议参考操作系统的教科书)

  线程是进程的一条分支,比如switch 语句是一个进程,则一个case分支就可以看做是一个线程。子进程是由父进程生成的一个进程,他可能也包含多条线程。

http://hazardlabo.com/zijincheng/166.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有