|
分類:[.NET 全般]
VB2017にて、MemoryMappedFilesを利用してメモリマップドファイルを複数書き込むプログラムを作りました。 1か所はタイマーで一定周期毎にCreateOrOpenを行い、1つ目のメモリマップドファイルへデータを送り続けるもの、 他数か所はボタンイベントで押された時に数か所それぞれ1か所ごとに対応したメモリマップドファイルをCreateOrOpenで作成・もしくは開いてデータを送信。
その後、別のプログラムで上記の書込み用プログラムからデータを読み込む専用のプログラムを用意、各メモリマップドファイルのマップ名を指定することでその中身を読み込むプログラムを作成しました。 ところが、読込用プログラムで読み込みを行う際、書込み用プログラムでタイマーで常に書き込んでいるメモリマップドファイルは中身を読み込めるのですが、 ボタンイベントで書き込まれるメモリマップドファイルの中身が空になってしまうことがあります。
これは、プロセスが消えた?かそういうことでメモリマップドファイルの中身が解放されてしまった…ということでしょうか? よろしければご教授願います。
|