source: trunk/src/kernel32/thread.h@ 22018

Last change on this file since 22018 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
Line 
1/* $Id: thread.H,v 1.8 2002-06-11 16:36:54 sandervl Exp $ */
2
3/*
4 * Win32 Thread API functions
5 *
6 * Copyright 1998 Sander van Leeuwen (sandervl@xs4all.nl)
7 *
8 *
9 * Project Odin Software License can be found in LICENSE.TXT
10 *
11 */
12#ifndef __THREAD_H__
13#define __THREAD_H__
14
15typedef DWORD (* WIN32API WIN32THREADPROC)(LPVOID);
16
17class Win32Thread
18{
19public:
20 Win32Thread(LPTHREAD_START_ROUTINE pUserCallback, LPVOID lpData, DWORD dwFlags, HANDLE hThread, DWORD cbCommitStack);
21
22 PTHREAD_START_ROUTINE_O32 GetOS2Callback() { return Win32ThreadProc; };
23 /* this is to be privately used by hmthread.cpp only */
24 LPVOID _GetTEB() { return teb; };
25
26private:
27
28 LPVOID lpUserData;
29 LPTHREAD_START_ROUTINE pCallback;
30 DWORD dwFlags;
31 HANDLE hThread;
32 LPVOID teb;
33 DWORD cbCommitStack;
34
35 static DWORD OPEN32API Win32ThreadProc(LPVOID lpData);
36};
37
38#endif
Note: See TracBrowser for help on using the repository browser.