Last change
on this file was 21981, checked in by dmik, 13 years ago |
kernel32: Fix stack size interpretation in CreateThread().
It now uses the stack size parameter as a number of bytes to
pre-commit, not as a total stack size, unless
STACK_SIZE_PARAM_IS_A_RESERVATION is set.
Closes #77.
|
File size:
903 bytes
|
Rev | Line | |
---|
[8648] | 1 | /* $Id: thread.H,v 1.8 2002-06-11 16:36:54 sandervl Exp $ */
|
---|
[99] | 2 |
|
---|
[4] | 3 | /*
|
---|
| 4 | * Win32 Thread API functions
|
---|
| 5 | *
|
---|
| 6 | * Copyright 1998 Sander van Leeuwen (sandervl@xs4all.nl)
|
---|
| 7 | *
|
---|
[126] | 8 | *
|
---|
| 9 | * Project Odin Software License can be found in LICENSE.TXT
|
---|
| 10 | *
|
---|
[4] | 11 | */
|
---|
| 12 | #ifndef __THREAD_H__
|
---|
| 13 | #define __THREAD_H__
|
---|
| 14 |
|
---|
| 15 | typedef DWORD (* WIN32API WIN32THREADPROC)(LPVOID);
|
---|
| 16 |
|
---|
| 17 | class Win32Thread
|
---|
| 18 | {
|
---|
| 19 | public:
|
---|
[21981] | 20 | Win32Thread(LPTHREAD_START_ROUTINE pUserCallback, LPVOID lpData, DWORD dwFlags, HANDLE hThread, DWORD cbCommitStack);
|
---|
[4] | 21 |
|
---|
[3128] | 22 | PTHREAD_START_ROUTINE_O32 GetOS2Callback() { return Win32ThreadProc; };
|
---|
[21457] | 23 | /* this is to be privately used by hmthread.cpp only */
|
---|
| 24 | LPVOID _GetTEB() { return teb; };
|
---|
[3128] | 25 |
|
---|
[4] | 26 | private:
|
---|
| 27 |
|
---|
[8648] | 28 | LPVOID lpUserData;
|
---|
| 29 | LPTHREAD_START_ROUTINE pCallback;
|
---|
| 30 | DWORD dwFlags;
|
---|
| 31 | HANDLE hThread;
|
---|
| 32 | LPVOID teb;
|
---|
[21981] | 33 | DWORD cbCommitStack;
|
---|
[125] | 34 |
|
---|
[21707] | 35 | static DWORD OPEN32API Win32ThreadProc(LPVOID lpData);
|
---|
[4] | 36 | };
|
---|
| 37 |
|
---|
[99] | 38 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.