+ -
当前位置:首页 → 问答吧 → 简直崩溃,有个家伙跟我将fork()函数父子进程共享全局变量!是么?

简直崩溃,有个家伙跟我将fork()函数父子进程共享全局变量!是么?

时间:2011-11-23

来源:互联网

简直崩溃,有个家伙跟我将fork()函数父子进程共享全局变量!是么?
我专门测试了下,的确不行。我只知道fork()函数创建了一个调用者进程的副本,只是共享代码段而已。

再求证下。

作者: teleinfor   发布时间: 2011-11-23

你说的没错。

但是,子进程继承父进程的全局变量。

子进程创建以后,可以读取原来父进程的全局变量的值。

但是创建以后,子进程修改了变量,或者是父进程修改了变量值,互相都不影响了。

作者: squiffy   发布时间: 2011-11-23

不是的
只是fork后子进程中是父进程的完全复制(其中有写时复制技术),不管什么变量,fork后父子进程中都是一样的,但两者之间没有关系,任何一个进程修改变量后,在另一个进程中都不能知道,更不能访问另一个进程中的变量,即使是全局变量。

你同事说的是错的

作者: yph007595   发布时间: 2011-11-23

引用 2 楼 yph007595 的回复:

不是的
只是fork后子进程中是父进程的完全复制(其中有写时复制技术),不管什么变量,fork后父子进程中都是一样的,但两者之间没有关系,任何一个进程修改变量后,在另一个进程中都不能知道,更不能访问另一个进程中的变量,即使是全局变量。

你同事说的是错的

++

作者: axengine   发布时间: 2011-11-23

热门下载

更多