Running a TACL Process as a Server
Running TACL as a Sever
6–2
107365 Tandem Computers Incorporated
When operating as a server, TACL starts up, logs on under its process accessor ID, and
processes input in the usual way.
Sending Requests to a
TACL Server
A requesting TACL process sends requests as described in Section 5, “Initiating and
Communicating With Processes.” Table 6-1 lists commands used to communicate
with a server.
Table 6-1. Functions That Support Interprocess Communication
TACL Function
Description
#REQUESTER with the WRITE option
Opens the background TACL process
#APPEND(V)
Sends a WRITEREAD to the TACL process
#EXTRACT(V)
Retrieves results
#REQUESTER with the CLOSE option
Closes the process
Use the macro in Figure 6-1,
runsrv
, to read requests from the home terminal and
send the requests to a background TACL process. The background TACL process
executes each request and returns results to #MYTERM. To invoke this macro, load
the file and enter:
runsrv
Figure 6-1. Starting and Sending Requests to a TACL Server (Page 1 of 2)
?SECTION runsrv MACRO
#FRAME
#PUSH err_var write_var temp_var rslt
== ** The following code starts the server process **
== Start the background TACL process, $mrt, if it is not
== already running. The IN file is $RECEIVE.
[#IF NOT [#PROCESSEXISTS $mrt] |THEN|
TACL /IN $receive, OUT [#MYTERM], NAME $mrt, NOWAIT/
]
== ** The following code accesses the TACL server **
== Open the TACL server process ($mrt)
#SET rslt [#REQUESTER /WAIT/ WRITE $mrt err_var write_var]
[#IF rslt = 0 |THEN|
#OUTPUT $mrt opened successfully
|ELSE|
#OUTPUT $mrt not open; file error [file1_err]
#RETURN
]