C++:是否可以通过 fork 进程共享指针?

标签 c++ pointers fork

我有一个计数变量,应该由我 fork 并由母进程使用/读取的几个进程进行计数。

我试图在母进程的 main() 函数中创建一个指针,并在 fork 的子进程中向上计数该指针。那行不通!尽管地址在每个进程中都相同,但每个 child 似乎都有自己的拷贝。

最好的方法是什么?

最佳答案

每个子进程都有自己的父进程内存拷贝(至少在它尝试修改任何内容时)。如果您需要在进程之间共享,则需要查看共享内存或一些类似的 IPC 机制。

顺便说一句,你为什么要把它变成一个社区 wiki - 你这样做可能会限制回复。

关于C++:是否可以通过 fork 进程共享指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/650770/

相关文章:

c++ - GLEW 编译,但在运行时崩溃

c - 这个指针是否安全声明?

c++ - 将所有类实例的列表存储为类中的静态数组

混淆使用 fork() 和 wait(),这也是最有效的方法吗?

c++ - Nicolai Josuttis 在他的书中说,开放成员函数不会清除状态标志。这不是我在 VS2010 中发现的。这是微软的问题吗?

c++ - 为什么编译器在编译两个相似的类时输出不同?

Perl:将打开的文件句柄传递给读取 STDIN 的程序

c - 如何在 Visual Studio 2015 中使用 fork()? (Windows 7 专业版)

c++ - std::regex 构造函数抛出异常

c++ - 通过不同类型的指针删除缓冲区?