  Debugging Multi-threaded ACCVIO at Exit? 
 The Question is:
 
One of our multi-thread application running on OpenVMS V7.2-1 reports the
 following errors when being shutdown:
 
%SYSTEM-W-ACCVIO, access violation, reason mask=00, virtual
 address=0000000000000024, PC=000000007BB7F138, PS=0000001B
 
  Improperly handled condition, image exit forced.
    Signal arguments:   Number = 0000000000000005
                        Name   = 0000000000000008
                                 0000000000000000
                                 00000000000000D0
                                 000000007BB77778
                                 000000000000001B
 
    Register dump:
    R0  = 0000000000000001  R1  = 000000007BB626F0  R2  = 000000007BB57788
    R3  = 0000000002051B40  R4  = 000000007BB626F0  R5  = 0000000040019F98
    R6  = 000000000200A208  R7  = 0000000000000001  R8  = 0000000000000000
    R9  = 0000000000000001  R10 = 0000000000000001  R11 = 0000000000000200
    R12 = 0000000000000003  R13 = 0000000000000001  R14 = 0000000000000000
    R15 = 0000000000000000  R16 = 0000000002051D18  R17 = 000000007BB628C8
    R18 = 0000000002051B40  R19 = 0000000000000000  R20 = 0000000000000001
    R21 = 0000000000000001  R22 = 000000000200A190  R23 = 0000000000000001
    R24 = 000000000200A200  R25 = 0000000000000002  R26 = 000000007BB7206C
    R27 = 000000007BB58510  R28 = 0000000000000001  R29 = 0000000000000000
    SP  = 000000000204F4B0  PC  = 000000007BB77778  PS  = 300000000000001B
 
 
The strange thing is, it does not always happen during shutdown. Most of time
 the application is shutdown without any problems.  Hope to get from u ASAP.
 Thanks.
 
 The Answer is :
 
  Please apply the available mandatory ECOs for OpenVMS V7.2-1 and
  please consider an upgrade to a more recent OpenVMS release.
 
  Please see HELP/MESSAGE ACCVIO for information on the specific
  meaning and contents of the ACCVIO error -- extensive details
  of the Access Violation are provided with the ACCVIO error.
 
  Please also consider that the possibility of a more generic stack
  corruption.  The binary code for the ACCVIO error is usually 0xC.
  Your extract shows the value 0x8, turning the error into a warning.
  This change might have happened intentionally within a condition
  handler, but it might also be indicative of additional corruption(s).
  It is also unusual to see a program counter address in P1 space.
 
  Please see topics (819), (837), (1246), (2223), (2234), (3215),
  (5533), (6495), (6776), (6853), (7110), (7551), (7799) and very
  likely other topics here in Ask The Wizard.  Also please see
  topics (1661) and (7552).  Also please see topics (6099) and
  (4647) for some related details of threads-related programming,
  and check for any exit handler -- for an example of an exit
  handler, see topic (3484) and see the atexit() call -- and any
  pending asynchronous activity that might be triggered during
  the current application exit; ensure you are correctly exiting
  from this threading-based application.
 
 Answer written or last revised on  19-AUG-2003 
