BEA Logo BEA Tuxedo Release 7.1

  Corporate Info  |  News  |  Solutions  |  Products  |  Partners  |  Services  |  Events  |  Download  |  How To Buy

 

   Tuxedo Doc Home   |   Reference   |   Topic List   |   Previous   |   Next   |   Contents

   BEA Tuxedo C Function Reference

tpsvrthrdone(3c)

Name

tpsvrthrdone() - terminates a BEA Tuxedo server thread

Synopsis

#include <atmi.h>
void tpsvrthrdone(void)

Description

The BEA Tuxedo server abstraction calls tpsvrthrdone() during the termination of each thread that has been started to handle dispatched service requests. In other words, even if a thread is terminated before it has handled a request, the tpsvrdone() function is called. When this routine is called, the thread of control is still part of the BEA Tuxedo server, but the thread has finished processing all service requests. Thus, BEA Tuxedo communication may be performed and transactions may be defined in this routine. However, if tpsvrthrdone() returns with either open connections or asynchronous replies pending, or while still in transaction mode, the BEA Tuxedo system closes the connections, ignores any pending replies, and aborts the transaction before the server dispatch thread exits.

If an application does not provide this routine in a server, then the default version of tpsvrthrdone() provided by the BEA Tuxedo system is called instead. The default version of tpsvrthrdone() calls tx_close().

tpsvrthrdone() is called even in single-threaded servers. In a single-threaded server, tpsvrthrdone() is called from the default version of tpsvrdone(). In a server with the potential for multiple dispatch threads, tpsvrdone() does not call tpsvrthrdone().

Usage

When called from tpsvrthrdone(), the tpreturn() and tpforward() functions simply return with no effect.

See Also

tpforward(3c), tpreturn(3c), tpsvrdone(3c), tpsvrthrinit(3c), tx_close(3c), servopts(5)