我有一个包含许多dll的复杂项目(其中一些是插件,即它们不能自由共享链接器符号名称),并且我希望能够提供一些其他dll可以安全获取的信息。如果假设setenv函数是线程安全的,我将非常高兴。
所以我要找的是
int val = get_or_create_process_wide_property("my_prop", 10);
if (val == 10) { //property just was created
}
else { //property was set by somebody else and we can use it
}
shm_open只是需要一点点开销,因此需要shm_unlink,但我无法确定会调用它,因为进程可能会崩溃。
答案 0 :(得分:0)
您的问题有点令人困惑/含糊。首先,DLL是Windows术语。由于您列出的操作系统是基于UNIX的,因此您想要的术语可能是“库”。
接下来,您有一堆库。假定您正在实现一种设置属性的自定义方式,那么我假设您可以控制内置于这些各种库中的代码如何获取其数据。
您已经说过,这些值需要在单个过程中可用。为什么不创建一个类来管理所有这些设置注册表呢?我不知道为什么这很难。