Copyright Digital Equipment Corp. All rights reserved.

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.