473,399 Members | 3,832 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,399 software developers and data experts.

Shared memory for .NET ?

I want to create a data repository in memory so that different processes
can share the same data, rather than loading the data multiple times for
each process and then having to contend with synchronisation issues.

Is there any library out there that will allow shared memory for
inter-process communicating in .Net?

Better still, is there a library that allows distributed shared memory
in .Net ?

Google is not bringing up anything useful ...

Mar 9 '06 #1
6 5834
Bart Simpson <ea*********@springfield.com> wrote in
news:du**********@nwrdmz03.dmz.ncs.ea.ibs-infra.bt.com:
I want to create a data repository in memory so that different
processes can share the same data, rather than loading the data
multiple times for each process and then having to contend with
synchronisation issues.

Is there any library out there that will allow shared memory for
inter-process communicating in .Net?

Better still, is there a library that allows distributed shared
memory in .Net ?

Google is not bringing up anything useful ...


Bart,

Search for CreateFileMapping or MapViewOfFile in the
microsoft.public.dotnet.* newsgroups. This might also be of
interest:

http://www.thecodeproject.com/csharp/csthreadmsg.asp

--
Hope this helps.

Chris.
-------------
C.R. Timmons Consulting, Inc.
http://www.crtimmonsinc.com/
Mar 9 '06 #2
"Bart Simpson" <ea*********@springfield.com> wrote
Is there any library out there that will allow shared memory for
inter-process communicating in .Net?
Hi Bart,

Mr. Burns had a research program going a while back that was investigating
the radioactivity of memory mapped files and their impact upon his
up-and-coming team, the Springfield Isotopes. While this was an older
project (being fission based, not fusion), one of his hotshot engineer wrote
a MemoryMappedFileSteam class just so the Springfield Isotopes were able to
compete against the other big league teams.

Fortunatly the Memory Mapped File infrastructure was built to work with all
of Mr. Burns's teams, so long as they're all playing together within the
same reactor. When one of these teams is outside the reactor though, they're
tempreature cools down rapidly and no more radioactivity is possible (this
was originally a fission experiment, and cold fusion was just a pipe dream,
remember).

Mr. Burn's version of this tool can be found insdie the old Caching
Application Block.
http://msdn.microsoft.com/library/de...l/caching1.asp

Not to be outdone (and Waylon bet him a bakers gross donuts he couldn't do
it), Homer went ahead and took this a few steps futher. To Everyone's
surprise (especially Maggie and Marge), his end result turned out quite
well. So well, in fact, your sister used it at the Science Fair to beat out
Burns's entry. Lisa's project can be found here:
http://www.codeproject.com/aspnet/Vb...appedCache.asp
Better still, is there a library that allows distributed shared memory in
.Net ?


Only in ErLang and Java. Nothing yet in .Net - at least not that I've seen.

--
Milhouse van Houten
Mar 9 '06 #3
What's your environment? serverside, client side (win/web) ?

There are several solutions for this, for server side u can use "Shared
Property Manager" in case of sharing simple types, for web apps u need to use
Cache or stateServer for this reason

BTW, there is a sample of wrapping API MMF for .net
http://www.winterdom.com/dev/dotnet/index.html
"Bart Simpson" wrote:
I want to create a data repository in memory so that different processes
can share the same data, rather than loading the data multiple times for
each process and then having to contend with synchronisation issues.

Is there any library out there that will allow shared memory for
inter-process communicating in .Net?

Better still, is there a library that allows distributed shared memory
in .Net ?

--
WBR,
Michael Nemtsev :: blog: http://spaces.msn.com/laflour

"At times one remains faithful to a cause only because its opponents do not
cease to be insipid." (c) Friedrich Nietzsche
Mar 9 '06 #4


Chris Mullins wrote:
"Bart Simpson" <ea*********@springfield.com> wrote
Is there any library out there that will allow shared memory for
inter-process communicating in .Net?

Hi Bart,

Mr. Burns had a research program going a while back that was investigating
the radioactivity of memory mapped files and their impact upon his
up-and-coming team, the Springfield Isotopes. While this was an older
project (being fission based, not fusion), one of his hotshot engineer wrote
a MemoryMappedFileSteam class just so the Springfield Isotopes were able to
compete against the other big league teams.

Fortunatly the Memory Mapped File infrastructure was built to work with all
of Mr. Burns's teams, so long as they're all playing together within the
same reactor. When one of these teams is outside the reactor though, they're
tempreature cools down rapidly and no more radioactivity is possible (this
was originally a fission experiment, and cold fusion was just a pipe dream,
remember).

Mr. Burn's version of this tool can be found insdie the old Caching
Application Block.
http://msdn.microsoft.com/library/de...l/caching1.asp

Not to be outdone (and Waylon bet him a bakers gross donuts he couldn't do
it), Homer went ahead and took this a few steps futher. To Everyone's
surprise (especially Maggie and Marge), his end result turned out quite
well. So well, in fact, your sister used it at the Science Fair to beat out
Burns's entry. Lisa's project can be found here:
http://www.codeproject.com/aspnet/Vb...appedCache.asp

Better still, is there a library that allows distributed shared memory in
.Net ?

Only in ErLang and Java. Nothing yet in .Net - at least not that I've seen.

Thanks 'Millhouse' - that's why you're my 'bestest' friend ! :-)

Mar 9 '06 #5
Thanks for the links Mike. BTW FYI, I'm implementing this client side.

Michael Nemtsev wrote:
What's your environment? serverside, client side (win/web) ?

There are several solutions for this, for server side u can use "Shared
Property Manager" in case of sharing simple types, for web apps u need to use
Cache or stateServer for this reason

BTW, there is a sample of wrapping API MMF for .net
http://www.winterdom.com/dev/dotnet/index.html
"Bart Simpson" wrote:

I want to create a data repository in memory so that different processes
can share the same data, rather than loading the data multiple times for
each process and then having to contend with synchronisation issues.

Is there any library out there that will allow shared memory for
inter-process communicating in .Net?

Better still, is there a library that allows distributed shared memory
in .Net ?


Mar 9 '06 #6
Hi

If you are looking for managed support for sharing memory, variables and arrays, then this (beta) product is for you.

It is designed to solve the very issues you mention, and introduces a set of abstractions for the .NET developer that are quite new.

Sharing data as variables, arrays or sttructures between multiple processes (even 32-bit and 64-bit processes at the same time) is trivial.

It is easy to create and access true shared variables in .NET by using the Shared<T> class, in which T can be any primitive type. You may also declare and access arrays of primitive types.

The product also makes it easy to persist objects along with their version info.

Visit http://www.morantex.com/Persistore.aspx and download the freely available beta preview, any feedback or feature requests are very welcome.

Hugh


Thanks for the links Mike. BTW FYI, I'm implementing this client side.

Michael Nemtsev wrote:
[color=blue]
> What's your environment? serverside, client side (win/web) ?
>
> There are several solutions for this, for server side u can use "Shared
> Property Manager" in case of sharing simple types, for web apps u need to use
> Cache or stateServer for this reason
>
> BTW, there is a sample of wrapping API MMF for .net
> http://www.winterdom.com/dev/dotnet/index.html
>
>
> "Bart Simpson" wrote:
>
>[color=green]
>>I want to create a data repository in memory so that different processes
>>can share the same data, rather than loading the data multiple times for
>>each process and then having to contend with synchronisation issues.
>>
>>Is there any library out there that will allow shared memory for
>>inter-process communicating in .Net?
>>
>>Better still, is there a library that allows distributed shared memory
>>in .Net ?
>>[/color][/color]
May 2 '06 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Srijit Kumar Bhadra | last post by:
Hello, Here is some sample code with pywin32 build 203 and ctypes 0.9.6. Best regards, /Srijit File: SharedMemCreate_Mutex_win32all.py # This application should be used with...
3
by: alanrn | last post by:
I would like to start a dialog on how to implement the equivalent functionality of UNIX shared memory in .NET. I work with a factory automation system. The bulk of the system is written in C/C++....
11
by: Michael Schuler | last post by:
The use of STL in shared memory poses a real problem since (non-smart) pointers are not allowed there. Is there any solution for containers in shared memory using smart pointers? Where can I...
1
by: myren, lord | last post by:
When I first discovered shared memory (between multiple processes) I immediately started thinking of how to build my own VM subsystem + locking mechanisms for a large single block of memory. This...
14
by: phil_gg04 | last post by:
Dear C++ Experts, Over the last couple of months I have been writing my first program using shared memory. It has been something of an "in-at-the-deep-end" experience, to say the least. At...
12
by: Jeremy | last post by:
Hi all, I'm getting very confused about how DB2 uses shared memory and I wonder if someone could clarify matters for me, please ? We are running 32bit DB2 V7.2 FP9 under AIX 4.3.3 on a machine...
5
by: Jim | last post by:
Hello, I have a broken server that we are going to be moving off to a new server with a new version of DB2 but here is what I have right now: RedHat 7.0 (2.2.24smp) DB2 v6.1.0.40 I am...
4
by: herbert | last post by:
I am coding a dozen "background" realtime apps for factory automation in .NET 2.0. The apps need to share a common memory as there are lots of variables to be shared (and synchronized of...
21
by: llothar | last post by:
Hello, i need to manage a heap in shared memory. Does anybody know about a portable (win32+mac+posix) c implementation for this.
5
by: Sune | last post by:
Hi all, I want to make data stored in-memory (not disk) available to several processes. My concern is that poorly written C applications with dangling pointers may(will) damage the data in this...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.