Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2002-08-29 07:33:50 +0400
committerChristopher Faylor <me@cgf.cx>2002-08-29 07:33:50 +0400
commitd4d59223ed04e28eebbb46f4c71d1ea4629b2fd1 (patch)
treea27fb7f5b2f9ff9e95db2fe75a06d0360fc81061 /winsup/cygwin/cygthread.h
parent64508b36f9a0ac020eaef06696108a83dd6473d5 (diff)
* cygthread.cc (hthreads): Remove unneeded global.
(cygthread::simplestub): New static member function. (cygthread::runner): Don't set hthreads. (cygthread::freerange): New member function. (cygthread::operator new): Call freerange if all cygwin slots are used up. (cygthread::exit_thread): Don't mess with event if freerange thread. (cygthread::detach): Ditto. * cygthread.h (class cygthread): Declare new member functions and variables.
Diffstat (limited to 'winsup/cygwin/cygthread.h')
-rw-r--r--winsup/cygwin/cygthread.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/winsup/cygwin/cygthread.h b/winsup/cygwin/cygthread.h
index 7f5a59455..37f7c6537 100644
--- a/winsup/cygwin/cygthread.h
+++ b/winsup/cygwin/cygthread.h
@@ -15,9 +15,13 @@ class cygthread
const char *__name;
LPTHREAD_START_ROUTINE func;
VOID *arg;
+ bool is_freerange;
static DWORD main_thread_id;
+ static bool initialized;
static DWORD WINAPI runner (VOID *);
+ static DWORD WINAPI free_runner (VOID *);
static DWORD WINAPI stub (VOID *);
+ static DWORD WINAPI simplestub (VOID *);
public:
static const char * name (DWORD = 0);
cygthread (LPTHREAD_START_ROUTINE, LPVOID, const char *);
@@ -27,6 +31,7 @@ class cygthread
operator HANDLE ();
static bool is ();
void * operator new (size_t);
+ static void * freerange ();
void exit_thread ();
};