Client/Server interprocess communication via shared memory

Client/Server interprocess communication via Shared Memory

provided by: 
Originally published at Internet.com


Win32 offers several possibilities for interprocess communication (shared memory, mailslots, named pipes to name a few). Each has its advantages and disadvantages - the best one does not actually exist. This article describes how to use shared memory for interprocess communication in the following scenario: * Multiple processes are communicating to one process (kind of similar to client/server architecture on a local machine). * Data transfer is bidirectional which means that each process (client) sends data to the server and collects an answer. * Data transfer is initiated by the clients. * Access to shared memory must be protected from concurrent access which results in data corruption - synchronization.

Note: Shared memory is a very convenient method for interprocess communication on a local machine since it will work both on Windows 95 and on Windows NT. Named Pipes (better choice since it works also via a network) are not fully supported on Windows 95.

Since multiple clients are communicating to the server, it is assumed that the server proccess must be started first. However, this is not a requirement. First, I will describe the server side and then the client side.

Server

...

Read article at Internet.com site
Regional Articles
- Client/Server interprocess communication via shared memory Alabama
- Client/Server interprocess communication via shared memory Alaska
- Client/Server interprocess communication via shared memory Arizona
- Client/Server interprocess communication via shared memory Arkansas
- Client/Server interprocess communication via shared memory California
- Client/Server interprocess communication via shared memory Colorado
- Client/Server interprocess communication via shared memory Connecticut
- Client/Server interprocess communication via shared memory DC
- Client/Server interprocess communication via shared memory Delaware
- Client/Server interprocess communication via shared memory Florida
- Client/Server interprocess communication via shared memory Georgia
- Client/Server interprocess communication via shared memory Hawaii
- Client/Server interprocess communication via shared memory Idaho
- Client/Server interprocess communication via shared memory Illinois
- Client/Server interprocess communication via shared memory Indiana
- Client/Server interprocess communication via shared memory Iowa
- Client/Server interprocess communication via shared memory Kansas
- Client/Server interprocess communication via shared memory Kentucky
- Client/Server interprocess communication via shared memory Louisiana
- Client/Server interprocess communication via shared memory Maine
- Client/Server interprocess communication via shared memory Maryland
- Client/Server interprocess communication via shared memory Massachusetts
- Client/Server interprocess communication via shared memory Michigan
- Client/Server interprocess communication via shared memory Minnesota
- Client/Server interprocess communication via shared memory Mississippi
- Client/Server interprocess communication via shared memory Missouri
- Client/Server interprocess communication via shared memory Montana
- Client/Server interprocess communication via shared memory Nebraska
- Client/Server interprocess communication via shared memory Nevada
- Client/Server interprocess communication via shared memory New Hampshire
- Client/Server interprocess communication via shared memory New Jersey
- Client/Server interprocess communication via shared memory New Mexico
- Client/Server interprocess communication via shared memory New York
- Client/Server interprocess communication via shared memory North Carolina
- Client/Server interprocess communication via shared memory North Dakota
- Client/Server interprocess communication via shared memory Ohio
- Client/Server interprocess communication via shared memory Oklahoma
- Client/Server interprocess communication via shared memory Oregon
- Client/Server interprocess communication via shared memory Pennsylvania
- Client/Server interprocess communication via shared memory Rhode Island
- Client/Server interprocess communication via shared memory South Carolina
- Client/Server interprocess communication via shared memory South Dakota
- Client/Server interprocess communication via shared memory Tennessee
- Client/Server interprocess communication via shared memory Texas
- Client/Server interprocess communication via shared memory Utah
- Client/Server interprocess communication via shared memory Vermont
- Client/Server interprocess communication via shared memory Virginia
- Client/Server interprocess communication via shared memory Washington
- Client/Server interprocess communication via shared memory West Virginia
- Client/Server interprocess communication via shared memory Wisconsin
- Client/Server interprocess communication via shared memory Wyoming
Related Articles

Rss   Delicious   Digg   Add To My Yahoo   Add To My Google   Bookmark   Search Plugin

Topics:
Architecture & Design Languages & Tools Project Management Web Services
Database Microsoft & .NET Security Wireless
Java Open Source Techniques XML