C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: .NETリモーティングでメモリを共有化したい


(過去ログ 69 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■39978 / inTopicNo.1)  .NETリモーティングでメモリを共有化したい
  
□投稿者/ もんた (9回)-(2009/08/19(Wed) 01:00:02)

分類:[ASP.NET (C#)] 

メモリを共有化したいのですが、方法が分からず悩んでいます。
具体的には、

メッセージがランダムにたくさん送られてくる

ひとつメッセージが送られてくると同時にプロセスが発生し、メモリ上のデータを書き換え
(メッセージにある値を参照し、メモリにあるクラス内の変数や配列を書き換える)


つまり、5つ処理があったらその全てから共有化されているメモリ上のデータの書き換えができるようにしたいのです。
多分メモリ書き換えのプロセスを常駐させておいて、そこに自由にアクセスできればいいと思うのですが・・・。
競合してる時の排他だとかはまたあとで考えようと思っています。

一対一のプロセス間通信のやり方は見つけたのですが、共有化したい場合のやり方が分からない状態です。
できれば直接変数を操作しない安全な方法が良いと思っています。

どなたかアドバイスを頂ければありがたいです。
引用返信 編集キー/
■39979 / inTopicNo.2)  Re[1]: .NETリモーティングでメモリを共有化したい
□投稿者/ やじゅ (1226回)-(2009/08/19(Wed) 01:50:07)
やじゅ さんの Web サイト
No39978 (もんた さん) に返信
> つまり、5つ処理があったらその全てから共有化されているメモリ上のデータの書き換えができるようにしたいのです。
> 多分メモリ書き換えのプロセスを常駐させておいて、そこに自由にアクセスできればいいと思うのですが・・・。
>

チャット??
http://d.hatena.ne.jp/coma2n/20071117/1195281882
引用返信 編集キー/
■39993 / inTopicNo.3)  Re[1]: .NETリモーティングでメモリを共有化したい
□投稿者/ biac (157回)-(2009/08/19(Wed) 12:51:10)
biac さんの Web サイト
.NETリモーティングというのは通信するためのシカケですから、 メモリを共有することはできません。

> つまり、5つ処理があったらその全てから共有化されているメモリ上のデータの書き換えができるようにしたいのです。

つまり、プロセス間でメモリを共有したい?

・ .NET Framework 4.0 (Visual Studio 2010) なら、MemoryMappedFile クラスを使う。
http://msdn.microsoft.com/ja-jp/library/system.io.memorymappedfiles.memorymappedfile(VS.100).aspx

・ それ以前のバージョンでは、Windows API を使う。
http://dobon.net/vb/bbs/log3-31/19304.html

引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -