HP OpenVMS Systems

ask the wizard
Content starts here

DCL interprocess communications?

» close window

The Question is:

 
I would like to write 2 com files in dcl doing interprocess comms. The first
one will hibernate for a preset time interval and wake up to call for the
second
com file which will do a check on the shadowsets within the system.
 
I have written the second com file but am finding difficulty in writing the
first one. Can I do it just by
using dcl?  A flag to pass back the its contents from the
second to the first com file would do.
 
 
 


The Answer is :

 
  The WAIT command works perfectly nicely for delaying operations.
 
  Other DCL-based alternatives include periodic batch jobs.
 
  Various system-monitoring packages are available, as well.
 
  As an example of how to do this task, see SYS$EXAMPLES:MSCPMOUNT.COM.
 
  As for the interprocess communications, one can use logical names in
  a logical name table shared by the two DCL processes, or one could use
  DECnet and a client-server procedure such as the one Stephen Hoffman
  posted to comp.os.vms recently:
 
	$! x.com
	$
	$! This procedure must be in the user's login directory.
	$! Requires a self-referential (not reverential :-) proxy:
	$!    UAF> add/prox <LocalNode>::<CurrentUser> <CurrentUser>/default
	$! Author: Stephen Hoffman, OpenVMS Engineering, Compaq
	$
	$ goto 'f$mode()'
	$INTERACTIVE:
	$ open/read/write chan 0::"task=x"
	$ write chan "Hello"
	$ read chan parameter
	$ close chan
	$ write sys$output parameter
	$ exit
	$BATCH:
	$OTHER:
	$NETWORK:
	$ open/read/write chan sys$net
	$ read chan parameter
	$ write chan "''parameter' yourself!"
	$ close chan
	$ exit
 
  An example of a run of the above procedure:
 
	$ @x
	Hello yourself!
	$

answer written or last revised on ( 11-AUG-1998 )

» close window