[an error occurred while processing this directive]

HP OpenVMS Systems Documentation

Content starts here

HP DECwindows Motif for OpenVMS
New Features


Previous Contents Index

4.8.3.6 DECW$LCN_SET_x_READY

Signals that input from a read, write, or exception operation has been received by changing the ready bit to the set state.

Format


DECW$LCN_SET_READ_READY lcn


DECW$LCN_SET_WRITE_READY lcn


DECW$LCN_SET_EXCEPT_READY lcn


Returns


VMS usage:
type: longword (unsigned)
access: write
mechanism: by value

Returns a longword condition value in R0. Condition values returned by this routine are listed under Condition Values Returned.

Arguments

lcn


VMS usage:
type: longword
access: read only
mechanism: by value

The value of the LCN whose ready bit will be changed to the set state (1).

Description

DECW$LCN_SET_x_READY sets the read, write, or except ready bit of an LCN. This signals input has been received from the specified operations.

These routines are thread- and AST-reentrant and callable from exec and lower modes. When any of the DECW$LCN_SET_x_READY routines are called from exec mode with multithreading enabled, the call declares a user mode AST. This AST performs the signaling for any user-mode processes that are currently in a wait state.

The equivalent functions of DECW$LCN_SET_x_READY are also available as system services (DECW$XPORT_LCN_SET_x) from the set of transport-common routines (DECW$XPORT_SERVICES.EXE).

Condition Values Returned

SS$_NORMAL Routine successfully completed.
SS$_EXQUOTA The current memory quota has been exceeded.
SS$_INSFMEM There is insufficient memory to perform the operation.
DECW$_INVLCN The LCN has not been allocated.
DECW$_NOT_INITIALIZED The LCN has not been initialized; DECW$LCN_ALLOCATE must be called prior to this operation.

4.8.3.7 DECW$LCN_THREAD_INIT

Initializes multithreading support for LCN operations.

Format


DECW$LCN_THREAD_INIT [efn]


Returns


VMS usage:
type: longword (unsigned)
access: write
mechanism: by value

Returns a longword condition value in R0. Condition values returned by this routine are listed under Condition Values Returned.

Arguments

efn


VMS usage:
type: longword
access: read only
mechanism: by value

The value of the specified EFN. When multithreading is enabled, an EFN value must be specified when performing select operations (DECW$LCN_SELECT or DECW$LCN_SELECT_ONE) with event flag masks. The EFN is supplied either by DECW$LCN_THREAD_INIT or from the first select call that provides an efn argument.

The value of the efn argument must match the value supplied for any previous select operations or calls to DECW$LCN_THREAD_INIT. The event flag must also be in the same event flag cluster as the efn value supplied to subsequent select or initialization operations.

Description

DECW$LCN_THREAD_INIT enables multithreaded LCN operations. This routine is only callable from user mode with user mode ASTs enabled and can be called multiple times by a single process.

Condition Values Returned

SS$_NORMAL Routine successfully completed.
DECW$_CHANGED_EFN An event flag was specified that differs from that specified in a previous initialization or select call.
DECW$_INSFMEM There is insufficient memory to perform the operation.
DECW$_NOPTHREADRTL The POSIX Thread Library (PTHREAD$RTL) has not been loaded.
DECW$_NOTUSERMODE This routine was not called from user mode.
DECW$_PTHREAD_INVALID A POSIX Thread routine returned an unexpected error.


Index Contents