|
Revision 3437, 2.5 kB
(checked in by patrickh, 8 years ago)
|
MFH: Implemented thread-specific data on Win32. This isn't being used
anywhere, so it hasn't been tested. The API is so simple, though,
that it's farily unlikely that this code is broken. (No M's in this
commit!)
|
- Property svn:eol-style set to
native
- Property svn:keywords set to
Author Date Id Revision
|
| Line | |
|---|
| 1 |
|
|---|
| 2 |
|
|---|
| 3 |
|
|---|
| 4 |
|
|---|
| 5 |
|
|---|
| 6 |
|
|---|
| 7 |
|
|---|
| 8 |
|
|---|
| 9 |
|
|---|
| 10 |
|
|---|
| 11 |
|
|---|
| 12 |
|
|---|
| 13 |
|
|---|
| 14 |
|
|---|
| 15 |
|
|---|
| 16 |
|
|---|
| 17 |
|
|---|
| 18 |
|
|---|
| 19 |
|
|---|
| 20 |
|
|---|
| 21 |
|
|---|
| 22 |
|
|---|
| 23 |
|
|---|
| 24 |
|
|---|
| 25 |
|
|---|
| 26 |
|
|---|
| 27 |
|
|---|
| 28 |
|
|---|
| 29 |
|
|---|
| 30 |
|
|---|
| 31 |
|
|---|
| 32 |
|
|---|
| 33 |
|
|---|
| 34 |
#ifndef _VJ_THREAD_H_ |
|---|
| 35 |
#define _VJ_THREAD_H_ |
|---|
| 36 |
|
|---|
| 37 |
|
|---|
| 38 |
#include <vjConfig.h> |
|---|
| 39 |
|
|---|
| 40 |
|
|---|
| 41 |
|
|---|
| 42 |
|
|---|
| 43 |
typedef void (*vj_thread_func_t)(void *); |
|---|
| 44 |
|
|---|
| 45 |
|
|---|
| 46 |
typedef vj_thread_func_t THREAD_FUNC; |
|---|
| 47 |
|
|---|
| 48 |
#include <Threads/vjBaseThread.h> |
|---|
| 49 |
|
|---|
| 50 |
|
|---|
| 51 |
#if defined(VJ_IRIX_SPROC) |
|---|
| 52 |
typedef struct cancel_state cancel_state_t; |
|---|
| 53 |
|
|---|
| 54 |
# include <Threads/vjThreadSGI.h> |
|---|
| 55 |
# include <Threads/vjThreadKeySGI.h> |
|---|
| 56 |
|
|---|
| 57 |
typedef class vjThreadSGI vjThread; |
|---|
| 58 |
typedef class vjThreadKeySGI vjKeyId; |
|---|
| 59 |
#elif defined(VJ_OS_Win32) |
|---|
| 60 |
# include <windows.h> |
|---|
| 61 |
# include <process.h> |
|---|
| 62 |
# include <Threads/vjThreadWin32.h> |
|---|
| 63 |
# include <Threads/vjThreadKeyWin32.h> |
|---|
| 64 |
typedef vjThreadWin32 vjThread; |
|---|
| 65 |
typedef vjThreadKeyWin32 vjKeyId; |
|---|
| 66 |
#elif defined(VJ_USE_PTHREADS) |
|---|
| 67 |
typedef int cancel_state_t; |
|---|
| 68 |
|
|---|
| 69 |
#ifndef _POSIX_C_SOURCE |
|---|
| 70 |
# define _POSIX_C_SOURCE VJ_POSIX_C_SOURCE |
|---|
| 71 |
#endif |
|---|
| 72 |
|
|---|
| 73 |
# include <Threads/vjThreadPosix.h> |
|---|
| 74 |
# include <Threads/vjThreadKeyPosix.h> |
|---|
| 75 |
|
|---|
| 76 |
typedef class vjThreadPosix vjThread; |
|---|
| 77 |
typedef class vjThreadKeyPosix vjKeyId; |
|---|
| 78 |
#else |
|---|
| 79 |
# include <Threads/vjThreadFunctor.h> |
|---|
| 80 |
#endif |
|---|
| 81 |
|
|---|
| 82 |
|
|---|
| 83 |
#endif |
|---|