Guardian Procedure Calls Reference Manual (G06.25+)
Guardian Procedure Calls (S)
Guardian Procedure Calls Reference Manual—522629-013
14-148
SIGNALPROCESSTIMEOUT Procedure
•
Deadlock possibility
Consider the following:
CALL SIGNALPROCESSTIMEOUT (10000D,,,TAG);
CALL READ (REC^NUM, BUFFER, 4);
 .
 . ! open number of $RECEIVE.
The read causes the process to stop and wait for the system message to be 
generated by timeout (assuming no other messages are expected). Timeout does 
not occur because process time does not advance while the read is waiting, so a 
deadlock occurs.  
Message
•
Timeout message
When a time-list element (TLE) set by a call to the SIGNALPROCESSTIMEOUT 
procedure times out, a system message -26 (process time timeout) is placed on 
the $RECEIVE queue to be read by the caller. (This message is identical to the 
message generated by SIGNALTIMEOUT except that the message number is 
different.) 
OSS Considerations
OSS processes can use this procedure and generate a system message. An OSS 
signal is not generated.
Example
CALL SIGNALPROCESSTIMEOUT( VALUE , MSG, , TIMERTAG );
Related Programming Manual
For programming information about the SIGNALPROCESSTIMEOUT procedure, see 
the 
Guardian Programmer’s Guide.
Note. This deadlock does not happen with the SIGNALTIMEOUT procedure, which measures 
elapsed time (as measured by the processor clock) rather than process execution time.










