Linux,共享对象中的并发

时间:2013-01-30 12:46:36

标签: linux cgi shared-objects

我有一个与我的后端环境有关的问题:

在linux机器上(suse linux),有一个apache webserver,启用了cgi:

2个不同的用户(在不同的地方),在浏览器上的webapp中,单击“相同时间”的“事件”按钮。因此,apache webserver启动2个运行cgi的SEPARATE进程(它是一个已编译的c可执行文件)“show_events”。

但是这个编译好的c可执行文件加载了一个共享对象“events_helper”并调用了这个共享对象中的方法。

现在我的问题:

“show_events”cgi程序中的这两个用户是否共享相同的共享对象“events_helper”,因此我必须考虑并发性,或者每个“show_events”进程是否都有自己的共享对象副本,因此并发性主题。

非常感谢

1 个答案:

答案 0 :(得分:2)

由于它们在不同的进程中运行,因此它们的堆栈和堆是不同的副本,因此您无需担心这一点。 如果它们都访问相同的文件或使用显式声明的共享内存,那么您需要使用互斥或​​其他方法处理该情况。