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.

74 lines
1.2 KiB

  1. /*++
  2. Copyright (c) 2000 Microsoft Corporation
  3. Module Name:
  4. idletask.h
  5. Abstract:
  6. This module contains the API and type declaration to support
  7. idle/background tasks.
  8. Author:
  9. Dave Fields (davidfie) 26-July-1998
  10. Cenk Ergan (cenke) 14-June-2000
  11. Revision History:
  12. --*/
  13. #ifndef _IDLETASK_H_
  14. #define _IDLETASK_H_
  15. #ifdef __cplusplus
  16. extern "C" {
  17. #endif
  18. //
  19. // Idle task identifier, used as aid in tracking registered idle
  20. // tasks, especially for debugging. Contact code's maintainers if you
  21. // wish to use idletask functionality.
  22. //
  23. typedef enum _IT_IDLE_TASK_ID {
  24. ItPrefetcherMaintenanceIdleTaskId,
  25. ItSystemRestoreIdleTaskId,
  26. ItOptimalDiskLayoutTaskId,
  27. ItPrefetchDirectoryCleanupTaskId,
  28. ItDiskMaintenanceTaskId,
  29. ItHelpSvcDataCollectionTaskId,
  30. ItMaxIdleTaskId
  31. } IT_IDLE_TASK_ID, *PIT_IDLE_TASK_ID;
  32. #ifndef MIDL_PASS
  33. DWORD
  34. RegisterIdleTask (
  35. IN IT_IDLE_TASK_ID IdleTaskId,
  36. OUT HANDLE *ItHandle,
  37. OUT HANDLE *StartEvent,
  38. OUT HANDLE *StopEvent
  39. );
  40. DWORD
  41. UnregisterIdleTask (
  42. IN HANDLE ItHandle,
  43. IN HANDLE StartEvent,
  44. IN HANDLE StopEvent
  45. );
  46. DWORD
  47. ProcessIdleTasks (
  48. VOID
  49. );
  50. #endif // MIDL_PASS
  51. #ifdef __cplusplus
  52. }
  53. #endif
  54. #endif // _IDLETASK_H_