VMS Help  —  CRTL  decc$set_reentrancy, Argument
 type

    The type of reentrancy desired. Use one of the following values:

    o  C$C_MULTITHREAD - Designed to be used in conjunction with the
       DECthreads product. It performs DECthreads locking and never
       disables ASTs. DECthreads must be available on your system to
       use this form of reentrancy.

    o  C$C_AST - Uses the __TESTBITSSI (Integrity servers, Alpha)
       built-in function to perform simple locking around critical
       sections of RTL code, and it may additionally disable
       asynchronous system traps (ASTs) in locked regions of
       code. This type of locking should be used when AST code
       contains calls to C RTL I/O routines, or when the user
       application disables ASTs.

    o  C$C_TOLERANT - Uses the
       __TESTBITSSI (Integrity servers, Alpha)  built-in function
       to perform simple locking around critical sections of RTL
       code, but ASTs are not disabled. This type of locking should
       be used when ASTs are used and must be delivered immediately.
       TOLERANT is the default reentrancy type.

    o  C$C_NONE - Gives optimal performance in the C RTL, but
       does absolutely no locking around critical sections of RTL
       code. It should only be used in a single-threaded environment
       when there is no chance that the thread of execution will be
       interrupted by an AST that would call the C RTL.

    The reentrancy type can be raised but never lowered. The ordering
    of reentrancy types from low to high is C$C_NONE, C$C_TOLERANT,
    C$C_AST and C$C_MULTITHREAD. For example, once an application
    is set to multithread, a call to set the reentrancy to AST is
    ignored. A call to decc$set_reentrancy that attempts to lower the
    reentrancy type returns a value of -1.
Close Help