  DECthreads bugcheck (reason lckHandoff)? 
 The Question is:
 
What is the correct way to force an exit from a threaded application that will
 not cause a bugcheck and the associated output.  We have tried SYS$EXIT and
 get the following:
 
%CMA-F-EXIT_THREAD, current thread has been requested to exit
%DECthreads bugcheck (version V3.15-267), terminating execution.
% Reason:  lckHandoff:  not owner; lock = 0x00000000000EC118, value =
 0x0000000000000000, expected = 0x00000000004E3B40
% Running on OpenVMS V7.2-2 on AlphaServer 4100 5/533 4MB, -2048Mb; 4 CPUs
% The bugcheck occurred at 02-MAY-2002 15:20:52.82, running image
%  $1$DUA58:[900_MASTER_TKTEST.][COM.ALPND]TKTEST.EXE;28 in process 46E003F4
%  (named "SASDHB"), under username "SASDHB". AST delivery is enabled for all
%  modes; no ASTs active. Upcalls are enabled. Multiple kernel threads are
%  enabled.
% The current thread sequence number is -2, at 0x00113B40
%  Current thread traceback:
%     0:  PC 0x7BB7BB38, FP 0x004DFED0, DESC 0x7BB5DBE8
%     1:  PC 0x7BB78008, FP 0x004DFFA0, DESC 0x7BB5D788
%     2:  PC 0x7BB90374, FP 0x004E0040, DESC 0x7BB5FBD0
%     3:  PC 0x7BBA1CB4, FP 0x004E0240, DESC 0x7BB62B90
%     4:  PC 0x801180D0, FP 0x004E02C0, DESC 0x85DD1880
%     5:  PC 0x8EC9677C, FP 0x004E0340, DESC 0x8EC99A18
%     6:  PC 0x8011C4FC, FP 0x004E0420, DESC 0x8EAD8ED8
%     7:  PC 0x8009C70C, FP 0x004E04B0, DESC 0x85DB6AE8
%     8:  PC 0x7BB7D334, FP 0x004E0770, DESC 0x7BB5E200
%     9:  PC 0x7BB8A7D8, FP 0x004E07A0, DESC 0x7BB603A0
%    10:  PC 0x7BBA1C9C, FP 0x004E07C0, DESC 0x7BB62B90
%    11:  PC 0x801180D0, FP 0x004E0840, DESC 0x85DD1880
%    12:  PC 0x8EC9677C, FP 0x004E08C0, DESC 0x8EC99A18
%    13:  PC 0x000B9FB8, FP 0x004E0910, DESC 0x0000C8D0
%    14:  PC 0x00538304, FP 0x004E0950, DESC 0x004E6F70
%    15:  PC 0x0051E134, FP 0x004E0980, DESC 0x004E60A0
%    16:  PC 0x000CEC44, FP 0x004E09E0, DESC 0x0000FD40
%    17:  PC 0x000CDCC4, FP 0x004E1810, DESC 0x0000F8B8
%    18:  PC 0x000CD73C, FP 0x004E18E0, DESC 0x0000F970
%    19:  PC 0x000CD60C, FP 0x004E1950, DESC 0x0000F9C0
%    20:  PC 0x004A4304, FP 0x004E19E0, DESC 0x0049C0F0
%    21:  PC 0x000B8CEC, FP 0x004E1D10, DESC 0x0000C470
%    22:  PC 0x000BA274, FP 0x004E1D60, DESC 0x0000CA30
%    23:  PC 0x7BB8D2FC, FP 0x004E1DA0, DESC 0x7BB600A8
%    24:  PC 0x7BB7D504, FP 0x004E1FE0, DESC 0x7BB5E480
%    25:  PC 0x00000000, FP 0x7AE7DA60, DESC 0x7BB5C4B0
%    26:  PC 0x8EC97474, FP 0x7AE81B30, DESC 0x8EC99D30
%    27:  PC 0x7AFE551C, FP 0x7AE81BB0, DESC 0x7AFBC330
%  Bugcheck output saved to pthread_dump.log.
%SYSTEM-F-IMGDMP, dynamic image dump signal at PC=000000007BB7BC98, PS=0000001B
 
 
 The Answer is :
 
  This appears to either be a bug in DECthreads, or an application stack
  corruption -- DECthreads is sensitive to stack corruptions, and this
  DECthreads lckHandoff bugcheck can be one of the results of a stack
  corruption.  This could also potentially be a problem within DECthreads.
 
  Assuming that you have current ECO kits applied, please contact the
  customer support center.  Details on the application and on the context
  of the $exit call will likely be required.  A program that can reproduce
  the error can be useful, as well.
 
 Answer written or last revised on  6-MAY-2002 
