FORTRAN Reference Manual

Interprocess Communication
FORTRAN Reference Manual528615-001
14-3
Managing $RECEIVE
Communication between processes takes place by means of a special file called
$RECEIVE. For a comprehensive description of $RECEIVE, see the Guardian
Programmer’s Guide.
Managing $RECEIVE
The FORTRAN run-time environment maintains tables that enable it to manage
$RECEIVE. It determines the size of the tables based on the values you give for the
option specifiers to the RECEIVE directive.
The RECEIVE directive includes the following option specifiers:
OPEN open
open specifies the maximum number of opens from other processes that your
server process can manage simultaneously. The system returns error 12, “File in
Use,” if it receives an open request that would exceed the number you specify for
OPEN.
SYNCDEPTH sync
sync specifies the maximum number of replies that your program can hold for
each requester in case the requester’s backup process becomes its primary
process and begins executing the statements that appear immediately after the
requester’s most recent CHECKPOINT statement. The value you specify for sync
is application dependent. In general, sync specifies the maximum number of
messages that any requester can send to your process before the requester
executes a FORTRAN CHECKPOINT statement or calls a checkpoint system
procedure such as CHECKPOINT, CHECKPOINTX, CHECKPOINTMANY,
CHECKPOINTMANYX, and so forth.
Figure 14-3. Requesters and Servers
VST1403.vsd
Server A
Process 1
Server A
Process 2
Server A
Process 3
Database
I
Database
I I
Server B
Server C
Process 1
Server C
Process 2
Database
I I I
Requester C
Requester A Requester B
Requester D Requester E