Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

82 lines
2.3 KiB

  1. /***
  2. *mtest.h - Multi-thread testing include file
  3. *
  4. * Copyright (c) 1988-2001, Microsoft Corporation. All rights reserved.
  5. *
  6. *Purpose:
  7. * This source contains prototypes and definitions used for multi-thread
  8. * testing. In order to use the debug flavor of these routines, you
  9. * MUST link special debug versions of multi-thread crt0dat.obj and
  10. * mlock.obj into your program. In addition, mtest.obj contains the
  11. * routines prototyped in this include file.
  12. *
  13. * [NOTE: This source module is NOT included in the C runtime library;
  14. * it is used only for testing.]
  15. *
  16. * [Internal]
  17. *
  18. *Revision History:
  19. * 08-25-88 JCR Module created
  20. * 11-17-88 JCR Added _print_tiddata()
  21. * 04-04-89 JCR Added _THREADLOOPCNT_ (used in optional mtest.c code)
  22. * 07-11-89 JCR Added _SLEEP_ macro
  23. * 10-30-89 GJF Fixed copyright
  24. * 04-09-90 GJF Added _INC_MTEST stuff and #include <cruntime.h>.
  25. * Removed some leftover 16-bit support. Also, made
  26. * _print_tiddata() _CALLTYPE1.
  27. * 08-20-91 JCR C++ and ANSI naming
  28. * 04-06-93 SKS Replace CALLTYPE macro with __cdecl
  29. * 02-06-95 CFW DEBUG -> _DEBUG
  30. * 02-14-95 CFW Clean up Mac merge.
  31. * 03-29-95 CFW Add error message to internal headers.
  32. * 12-14-95 JWM Add "#pragma once".
  33. * 02-24-97 GJF Detab-ed.
  34. *
  35. ****/
  36. #if _MSC_VER > 1000 /*IFSTRIP=IGN*/
  37. #pragma once
  38. #endif
  39. #ifndef _INC_MTEST
  40. #define _INC_MTEST
  41. #ifndef _CRTBLD
  42. /*
  43. * This is an internal C runtime header file. It is used when building
  44. * the C runtimes only. It is not to be used as a public header file.
  45. */
  46. #error ERROR: Use of C runtime library internal header file.
  47. #endif /* _CRTBLD */
  48. #ifdef __cplusplus
  49. extern "C" {
  50. #endif
  51. #include <cruntime.h>
  52. /* Maximum thread count that mtest.c can handle */
  53. #define _THREADMAX_ 256
  54. /* Define thread loop count for mtest.c optional code path */
  55. #define _THREADLOOPCNT_ 5
  56. /* sleep macro */
  57. #define _SLEEP_(l) DOS32SLEEP(l)
  58. #ifdef _DEBUG
  59. int printlock(int locknum);
  60. int print_single_locks(void);
  61. int print_stdio_locks(void);
  62. int print_lowio_locks(void);
  63. int print_iolocks(void);
  64. int print_locks(void);
  65. #endif
  66. void __cdecl _print_tiddata(int);
  67. #ifdef __cplusplus
  68. }
  69. #endif
  70. #endif /* _INC_MTEST */