Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

MEM_IO.h File Reference

#include "ace/pre.h"
#include "ace/SOCK.h"
#include "ace/MEM_SAP.h"
#include "ace/Memory_Pool.h"
#include "ace/Message_Block.h"
#include "ace/Process_Semaphore.h"
#include "ace/Process_Mutex.h"
#include "ace/MEM_IO.i"
#include "ace/post.h"

Include dependency graph for MEM_IO.h:

Include dependency graph

This graph shows which files directly or indirectly include this file:

Included by dependency graph

Go to the source code of this file.


class  ACE_MEM_IO
 Defines the methods for the ACE shared memeory wrapper I/O routines (e.g., send/recv). The shared memory transport uses ACE_SOCK_* class to implement the signaling mechanism so we can easily use the new mechanism with the Reactor pattern (which uses select under the hood.) ACE_MEM_Acceptor and ACE_MEM_Connector are used to establish connections. When a connection is established, ACE_MEM_Acceptor creates the MMAP file for data exchange and sends the location of the file (complete path name) to ACE_MEM_Connector thru the socket. ACE_MEM_Connector then reads the location of the file off the socket and opens up the same MMAP file. ACE_MEM_Stream at each side then contains a reference to the ACE_Mallo object using the same MMAP file. When sending information using methods provided in this class, ACE_MEM_IO requests a chunk of memory from the MALLOC_TYPE object, copy the data into the shared memory and send the memory offset (from the start of the ACE_Malloc) across the socket. This action also servers as a signal to the other end. The receiving side then reverses the procedures and copies the information into user buffer. More...

class  ACE_MT_MEM_IO
class  ACE_Reactive_MEM_IO
struct  ACE_MT_MEM_IO::MQ_Struct
class  ACE_MT_MEM_IO::Simple_Queue
struct  ACE_MT_MEM_IO::Channel

Detailed Description

MEM_IO.h,v 2003/02/21 18:36:32 chad Exp

Nanbor Wang <>

Definition in file MEM_IO.h.

Generated on Mon Jun 16 11:47:56 2003 for ACE by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002