stl容器放到共享内存问题
当一个进程把stl的容器放到共享内存的时候,另一个进程去读取数据会不会出现冲突呢?我的编译器是vc8,我在调试过程中,看到了读取数据那个进程能够准确对把数据放到一个容器(map)里,但是就读不出来,总是在函数:void _CLR_OR_THIS_CALL _Adopt(const _Container_base *_Parent)的这行语句((_Container_base *)_Parent)->Myfirstiter = this;出错终止掉了。????希望大家帮帮忙,我确实不清楚什么原因。 当一个进程把stl的容器放到共享内存的时候,另一个进程去读取数据会不会出现冲突呢yes. Yo have to lock/unlock. 应该读取出错的,你也说了加锁,其目的就是让写入的时候完整些,之后再读取 标准库中的容器非线程安全性的容器
页:
[1]