DCE Application Programming Guide

NonStop DCE Jacket Functions
HP NonStop DCE Application Programming Guide429551-003
C-4
SERVERCLASS_SEND_
The thread is suspended for the duration of the send operation. Other threads in the pro-
cess will be scheduled to run. The timeout parameter can be used to specify that the send
be canceled after a specified interval. Alternatively, pthread_cancel() can be used (by
another thread) to cancel the send operation in progress in a thread. The cancel exception
generated by pthread_cancel() can be subsequently handled by the thread. As with the
CANCEL and SERVERCLASS_SEND_ Guardian procedures, the program cannot
determine whether the canceled message was sent or canceled before the server process
finished processing the request. If the send is canceled because of the expiration of the
timeout parameter, the function finishes with an error value of 233 (FEScError);
DCE_SERVERCLASS_SEND_INFO_() shows Pathsend error 918 (FEScSendOpera-
tionAborted) and Guardian file-system error 40 (FETimedOut).
The message_buffer parameter should refer to static or heap-allocated storage. It should
not be automatic storage and should not be stack-allocated storage for a TNS process. If
stack-allocated storage for a TNS process is specified, an error value 233 (FEScError) is
returned; DCE_SERVERCLASS_SEND_INFO_() shows Pathsend error 912
(FEScParameterBoundsError).
The message buffer is modified by the server reply. Therefore, the same buffer area
should not be used concurrently by more than one thread. The Threads package does not
check for this condition; it is the responsibility of the programmer who is using threads.
Multiple DCE_SERVERCLASS_SEND_() operations can be in progress in different
threads within a process; the maximum number of concurrent calls is determined by the
number of threads and the Pathsend limit of 512 for each LINKMON.
If DCE_SERVERCLASS_SEND_() is called while the thread has a current transaction,
the transaction identifier is propagated to the server class process. If the send is to a
server class configured with the TMF parameter OFF, the send finishes with return error
233 (FEScError) and DCE_SERVERCLASS_SEND_INFO_() shows Pathsend error
917 (FEScServerClassTmfViolation) and Guardian file-system error 0 (FEOK).
RETURN VALUES
Possible return values are the following Guardian file-system error numbers:
0 (zero) (FEOK) The DCE_SERVERCLASS_SEND_() operation completed
successfully.
233 (FEScError) You can call the DCE_SERVERCLASS_SEND_INFO_() function
to get detailed information about this error.
RELATED INFORMATION
Functions: DCE_SERVERCLASS_SEND_INFO_(3).
Figure C-1. DCE_SERVERCLASS_SEND_(3) Reference Page (page 3 of 3)