假如甲写了个test.dll,乙也写了个test.dll.
2个dll中都有一个同名共享数据,如下
#pragma data_seg("segtest")
int g_test = 0;
#pragma data_seg()SETCTIONS
segtest READ WRITE SHARED请问,系统调用这两个DLL时,会冲突吗?
2个dll中都有一个同名共享数据,如下
#pragma data_seg("segtest")
int g_test = 0;
#pragma data_seg()SETCTIONS
segtest READ WRITE SHARED请问,系统调用这两个DLL时,会冲突吗?
#pragma data_seg("segtest")
int g_test = 0;
#pragma data_seg()SETCTIONS
segtest READ WRITE SHARED
的目的就是只维护一个副本.
1。Q:假如甲写了个test.dll,乙也写了个test.dll.
2个dll中都有一个同名共享数据,如下
#pragma data_seg("segtest")
int g_test = 0;
#pragma data_seg() SETCTIONS
segtest READ WRITE SHARED 并且分别有函数changeData甲(),changeData乙(),来修改2个DLL中g_test的值. 两个进程分别调用这两个DLL时,g_test,get_g_test甲(),changeData乙()会不会冲突? A:两个进程分别调用这两个DLL时,不会冲突2。Q:当一个进程同时调用这两个DLL时(将2个DLL分别改名为testA.dll,testB.dll),会不会冲突?
A:changeData甲(),changeData乙()修改的是各自的g_test,不会冲突总结:无论如何,进程调用的不同DLL(包括仅名字不同的DLL,或仅所在目录不同的DLL)中的数据、函数是不会冲突的。欢迎指点!