diff options
Diffstat (limited to 'winsup/cygwin/threaded_queue.h')
-rwxr-xr-x | winsup/cygwin/threaded_queue.h | 67 |
1 files changed, 0 insertions, 67 deletions
diff --git a/winsup/cygwin/threaded_queue.h b/winsup/cygwin/threaded_queue.h deleted file mode 100755 index d72541e22..000000000 --- a/winsup/cygwin/threaded_queue.h +++ /dev/null @@ -1,67 +0,0 @@ -/* threaded_queue.h - - Copyright 2001, 2002 Red Hat Inc. - - Written by Robert Collins <rbtcollins@hotmail.com> - - This file is part of Cygwin. - - This software is a copyrighted work licensed under the terms of the - Cygwin license. Please consult the file "CYGWIN_LICENSE" for - details. */ - -#ifndef _THREADED_QUEUE_ -#define _THREADED_QUEUE_ - -/* a specific request */ - -class queue_request -{ - public: - class queue_request *next; - virtual void process (); - queue_request(); -}; - - -typedef DWORD WINAPI threaded_queue_thread_function (LPVOID); -/* parameters for a request finding and submitting loop */ - -class queue_process_param -{ - public: - bool start (threaded_queue_thread_function *, class threaded_queue *); - void stop (); - bool running; - long int shutdown; - class queue_process_param * next; - class threaded_queue *queue; - queue_process_param (bool ninterruptible); - ~queue_process_param (); - bool interruptible; - HANDLE interrupt; - HANDLE hThread; - DWORD tid; -}; - -/* a queue to allocate requests from n submission loops to x worker threads */ - -class threaded_queue -{ - public: - CRITICAL_SECTION queuelock; - HANDLE event; - bool active; - queue_request * request; - unsigned int initial_workers; - unsigned int running; - void create_workers (); - void cleanup (); - void add (queue_request *); - void process_requests (queue_process_param *, threaded_queue_thread_function *); - threaded_queue () : active (false), request (NULL), initial_workers (1), running (0), process_head (NULL) {}; - private: - queue_request *process_head; -}; - -#endif /* _THREADED_QUEUE_ */ |