共有メモリの使用に関する2つの質問があります。 CreateFileMappingを使用して、2つのプロセス間に共有メモリ領域を作成しています。CreateFileMappingとMapViewofFileで共有メモリを使用する場合の問題
1)私は、メモリを解放するためにCreateFileMappingまたはOpenFileMappingコールから返されたすべてのハンドルでCloseHandleを呼び出す必要があることを理解しています。 CloseHandleを呼び出さずに共有メモリを使用しているプログラムが終了した場合、私の質問は、すべてのハンドルが適切に閉じられ、Windows XP/7によってmemの割り当てが解除されるかどうかです。 IEを使用しているすべてのプロセスが閉じられた後、IEがリークする可能性はありますか?
2)MapViewofFileを使用して、memへのポインタを取得します。 1つのインスタンスでは、共有メモリは常にメソッドのコンテキスト内に存在すると仮定しました。だから私はポインタとしてMapViewOfFileの戻り値を保存し、memへのハンドルを閉じて、ちょうど共有mem(まだそれへのアクセスをロックする)へのポインタを使用しています。これは安全ですか?また、共有メモリにアクセスするたびにMapViewOfFileを呼び出す必要がありますか?
おかげで、
イアン
ありがとう、ありがとうございます。それがすべてだった。 – Ian