HP DECwindows Motif for OpenVMS New Features
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.
|
|