| Last change
 on this file since 9022 was             8648, checked in by sandervl, 23 years ago | 
        
          | 
thread linking + create TEB before thread creation
 | 
        
          | File size:
            752 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 |  | 
|---|
| 15 | typedef DWORD (* WIN32API WIN32THREADPROC)(LPVOID); | 
|---|
| 16 |  | 
|---|
| 17 | class Win32Thread | 
|---|
| 18 | { | 
|---|
| 19 | public: | 
|---|
| 20 | Win32Thread(LPTHREAD_START_ROUTINE pUserCallback, LPVOID lpData, DWORD dwFlags, HANDLE hThread); | 
|---|
| 21 |  | 
|---|
| 22 | PTHREAD_START_ROUTINE_O32 GetOS2Callback()  { return Win32ThreadProc; }; | 
|---|
| 23 |  | 
|---|
| 24 | private: | 
|---|
| 25 |  | 
|---|
| 26 | LPVOID      lpUserData; | 
|---|
| 27 | LPTHREAD_START_ROUTINE pCallback; | 
|---|
| 28 | DWORD       dwFlags; | 
|---|
| 29 | HANDLE      hThread; | 
|---|
| 30 | LPVOID      teb; | 
|---|
| 31 |  | 
|---|
| 32 | friend DWORD OPEN32API Win32ThreadProc(LPVOID lpData); | 
|---|
| 33 | }; | 
|---|
| 34 |  | 
|---|
| 35 | #endif | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.