home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 February / CHIP_2_98.iso / software / pelne / optionp / iis4_07.cab / ThreadPool.h < prev    next >
Text File  |  1997-10-25  |  916b  |  33 lines

  1. /*++
  2.  
  3. Copyright (c) 1997  Microsoft Corporation
  4.  
  5. Module Name:    ThreadPool.h
  6.  
  7. --*/
  8.  
  9. // Number of threads in pool
  10. #define POOL_THREADS 2
  11.  
  12. // Number of entries in ECBqueue
  13. #define WORK_QUEUE_ENTRIES 2
  14.  
  15. // Global critical section to control access to ECB queue
  16. CRITICAL_SECTION csQueueLock;
  17.  
  18. // Semaphore to wait on in worker thread; each time an ECB is added to the 
  19. // ECBqueue by HttpExtensionProc, the semaphore must be released once
  20. HANDLE hWorkSem;
  21.  
  22. // These functions will add/retrieve an ECB to/from the linked list.
  23. // ENTER csQueueLock BEFORE CALLING AND LEAVE csQueueLock AFTER
  24. //   RETURNING FROM THESE FUNCTIONS!!!
  25. BOOL AddWorkQueueEntry(EXTENSION_CONTROL_BLOCK *);
  26. BOOL GetWorkQueueEntry(EXTENSION_CONTROL_BLOCK ** ppECB);
  27.  
  28. // This function initializes the thread pool
  29. BOOL InitThreadPool(void);
  30.  
  31. // Function that threads in pool run
  32. DWORD WINAPI WorkerFunction(LPVOID); 
  33.