ZCOM C I/F Library Routines

ZSET_RCVR (3X)

receiver of the incoming messages. Use of this feature does not require that a primary receiver be defined. For every terminal, each receiver mode (except mode ZcOUTB_MLTPLX) allows a maximum of ZcMAX_SHARED_RCVRS (64) program ZLUs to be set with action ZcADD_SHARED.

An application program can indicate that it no longer wishes to receive messages by issuing a zset_rcvr() call with the same parameters as those specified in the original zset_rcvr() request, and setting the action parameter to ZcDEL_PRIMARY or ZcDEL_SHARED.

The libraries libzcom_c.a and libpthread.a must be linked into the calling program by giving the options “-lzcom_c -lpthread” to cc(1) or ld(1).

Threads

This routine may be called from a multi-threaded application using the

Considerations

POSIX (1003.1c) kernel threads API package. This routine has the

 

following characteristics when called by a multi-threaded application:

 

cancellation point

Thread cancellation can occur when a thread calls this

 

 

routine.

 

async-cancel unsafe

The calling thread’s cancelability type must be

 

 

PTHREAD_CANCEL_DEFERRED if cancellation is

 

 

enabled.

 

async-signal unsafe

It cannot be called from a signal handler.

 

fork unsafe

It cannot be called by a child process after fork(2) but

 

 

before exec(2).

292

Chapter 4