随笔分类 - CPP Development
在多个进程间共享内核对象时的安全性
摘要:近些天在开发一个项目的时候,需要在2个进程间通讯,当一个进程读好共享数据时告诉另外一个进程,以便进行同步操作。 用的是内核对象semaphone。一个调用::CreateSemaphore(NULL, nInitialCount, nMaxCount, "aNameOfsSemphoneName”), 另外一个调用::OpenSemaphore( SEMAPHORE_MODIFY_STATE...
阅读全文
进程间数据通讯要注意的问题
摘要:由于在项目开发需要,我提供了一个dll给java调用,其中的java通过jni调用dll中的接口,然后把数据传输给我的一个读取数据,进行数据处理的进程。 这就需要在进程间进行数据共享。在进程间进行数据共享的方法很多,想必很多人都知道: 一、 Windows共享数据段内的全局变量 1)#pragma data_seg(".MYDATA") //变量定义 int i = 0; #prag...
阅读全文
不要混合使用运行时库的静态版本和动态版本!!!!
摘要:最近在开发一个项目,有比较多的dll模块,以前测试时一直没有发现问题,运行的很正常。今天要发布一个新版本了,就用Bounders Check检查了一下。乖乖,很多错误阿!全部都是: Allocation Conflict: Attempting to call global_operator_delete on 0x01566E68; pointer was allocated by mal...
阅读全文
老陈学 C++ 序列之二: 友元函数
摘要:class one{ public: one(){}; operator two ( ) const { return two(); } friend ostream& operator << ( ostream& os, const one& o) //成员函数还是全局函数? { return os << " i " << o.i; } int i; }; ...
阅读全文
老陈学 C++ 序列之一: 运算符重载
摘要:一, operator = 与 copy construct function的调用时机区别 class fi { public: fi() { i = 2; } fi( const fi & s ) { i = s.i * s.i; } const fi& operator= ( const fi & s ) { if ( &s !...
阅读全文
浙公网安备 33010602011771号