seraphyの日記

日記というよりは過去を振り返るときのための単なる備忘録

2005-01-18から1日間の記事一覧

同期オブジェクトを使用せずに複数プロセスで共有データを保護する方法

c++

while( InterlockedExchange( &lock, 1 ) != 0 ) { Sleep( 100 ); } __try { ...... } __finally { InterlockedExchange( &lock, 0 ); }共有データ上にロック用のLONG値の領域を確保。 InterlockedExchange API(win95でもサポートされている)を用いて保護ブ…

DLLの静的データセグメントを複数のプロセスで共有する方法

ソース内で静的データセグメントをPRAGMAで定義。かならず初期化しておく。 #pragma data_seg("SHAREDMEM") namespace { LONG volatile lock = 0; LONG volatile data1 = 0; LONG volatile data2 = 0; } #pragma data_seg().DEF内で、指定したセグメントが共…