HP 3000 Manuals

Multiple Concurrent Readers or Writers [ Interprocess Communication:Programmer's Guide ] MPE/iX 5.0 Documentation


Interprocess Communication:Programmer's Guide

Multiple Concurrent Readers or Writers 

An application may need to use multiple concurrent readers or writers.
For example, multiple supervisors may need the services of the same
server.  The server may not be able to keep up with the requests, and so
multiple copies of it may be needed to handle the incoming requests.

Setting up a message file to be accessed by multiple concurrent readers
or multiple concurrent writers is not difficult.  However, there are some
subtleties you should be aware of:

 *  Since each reader receives its own record when it does an FREAD, and
    there is no "broadcast" facility in IPC, there is no way for all
    readers to receive copies of the same record.

 *  If either readers or writers are waiting on an EOF condition, they
    are awakened in the order in which they called their I/O intrinsics.

 *  Although a common command queue works well for both multiple readers
    and multiple writers, it is advisable to have individual response
    queues.  This ensures that a supervisor receives only the responses
    to its own commands.  In this situation, applications often pass the
    name of the response message file, or the writer's ID, along with the
    command, so that the file can be opened and the response sent to the
    correct destination.  (The writer's ID is discussed in the "Writer
    Identification" section in this chapter.)


MPE/iX 5.0 Documentation