- Timestamp:
- Nov 22, 2010 3:55:00 PM (14 years ago)
- Location:
- trunk/src/VBox/Runtime
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/common/misc/thread.cpp
r30112 r34256 604 604 RTSemEventMultiDestroy(hEvt2); 605 605 606 rtThreadNativeDestroy(pThread); 606 607 RTMemFree(pThread); 607 608 } -
trunk/src/VBox/Runtime/include/internal/thread.h
r33540 r34256 159 159 160 160 /** 161 * Called from rtThreadDestroy so that the TLS entry and any native data in the 162 * thread structure can be cleared. 163 * 164 * @param pThread The thread structure. 165 */ 166 void rtThreadNativeDestroy(PRTTHREADINT pThread); 167 168 /** 161 169 * Sets the priority of the thread according to the thread type 162 170 * and current process priority. … … 186 194 187 195 /* thread.cpp */ 188 int rtThreadMain(PRTTHREADINT pThread, RTNATIVETHREAD NativeThread, const char *pszThreadName);189 void rtThreadBlocking(PRTTHREADINT pThread, RTTHREADSTATE enmState, uint64_t u64Block,190 const char *pszFile, unsigned uLine, RTUINTPTR uId);191 void rtThreadUnblocked(PRTTHREADINT pThread, RTTHREADSTATE enmCurState);192 uint32_t rtThreadRelease(PRTTHREADINT pThread);193 void rtThreadTerminate(PRTTHREADINT pThread, int rc);196 int rtThreadMain(PRTTHREADINT pThread, RTNATIVETHREAD NativeThread, const char *pszThreadName); 197 void rtThreadBlocking(PRTTHREADINT pThread, RTTHREADSTATE enmState, uint64_t u64Block, 198 const char *pszFile, unsigned uLine, RTUINTPTR uId); 199 void rtThreadUnblocked(PRTTHREADINT pThread, RTTHREADSTATE enmCurState); 200 uint32_t rtThreadRelease(PRTTHREADINT pThread); 201 void rtThreadTerminate(PRTTHREADINT pThread, int rc); 194 202 PRTTHREADINT rtThreadGetByNative(RTNATIVETHREAD NativeThread); 195 203 PRTTHREADINT rtThreadGet(RTTHREAD Thread); 196 int rtThreadInit(void);197 void rtThreadTerm(void);198 void rtThreadInsert(PRTTHREADINT pThread, RTNATIVETHREAD NativeThread);199 #ifdef IN_RING3 200 int rtThreadDoSetProcPriority(RTPROCPRIORITY enmPriority);204 int rtThreadInit(void); 205 void rtThreadTerm(void); 206 void rtThreadInsert(PRTTHREADINT pThread, RTNATIVETHREAD NativeThread); 207 #ifdef IN_RING3 208 int rtThreadDoSetProcPriority(RTPROCPRIORITY enmPriority); 201 209 #endif /* !IN_RING0 */ 202 210 #ifdef IPRT_WITH_GENERIC_TLS 203 void rtThreadClearTlsEntry(RTTLS iTls);204 void rtThreadTlsDestruction(PRTTHREADINT pThread); /* in tls-generic.cpp */211 void rtThreadClearTlsEntry(RTTLS iTls); 212 void rtThreadTlsDestruction(PRTTHREADINT pThread); /* in tls-generic.cpp */ 205 213 #endif 206 214 -
trunk/src/VBox/Runtime/r0drv/darwin/thread2-r0drv-darwin.cpp
r29255 r34256 137 137 138 138 139 void rtThreadNativeDestroy(PRTTHREADINT pThread) 140 { 141 NOREF(pThread); 142 } 143 144 139 145 /** 140 146 * Native kernel thread wrapper function. -
trunk/src/VBox/Runtime/r0drv/freebsd/thread2-r0drv-freebsd.c
r19341 r34256 99 99 100 100 101 void rtThreadNativeDestroy(PRTTHREADINT pThread) 102 { 103 NOREF(pThread); 104 } 105 106 101 107 /** 102 108 * Native thread main function. -
trunk/src/VBox/Runtime/r0drv/nt/thread2-r0drv-nt.cpp
r28800 r34256 88 88 89 89 90 void rtThreadNativeDestroy(PRTTHREADINT pThread) 91 { 92 NOREF(pThread); 93 } 94 95 90 96 /** 91 97 * Native kernel thread wrapper function. -
trunk/src/VBox/Runtime/r0drv/os2/thread2-r0drv-os2.cpp
r8245 r34256 66 66 67 67 68 void rtThreadNativeDestroy(PRTTHREADINT pThread) 69 { 70 NOREF(pThread); 71 } 72 73 68 74 int rtThreadNativeCreate(PRTTHREADINT pThreadInt, PRTNATIVETHREAD pNativeThread) 69 75 { -
trunk/src/VBox/Runtime/r0drv/solaris/vbi/thread2-r0drv-solaris.c
r28800 r34256 81 81 82 82 83 void rtThreadNativeDestroy(PRTTHREADINT pThread) 84 { 85 NOREF(pThread); 86 } 87 88 83 89 /** 84 90 * Native thread main function. -
trunk/src/VBox/Runtime/r3/os2/thread-os2.cpp
r33393 r34256 95 95 96 96 97 void rtThreadNativeDestroy(PRTTHREADINT pThread) 98 { 99 if (pThread == *g_ppCurThread) 100 *g_ppCurThread = NULL; 101 } 102 103 97 104 /** 98 105 * Wrapper which unpacks the params and calls thread function. -
trunk/src/VBox/Runtime/r3/posix/thread-posix.cpp
r34176 r34256 204 204 205 205 206 void rtThreadNativeDestroy(PRTTHREADINT pThread) 207 { 208 if (pThread == (PRTTHREADINT)pthread_getspecific(g_SelfKey)) 209 pthread_setspecific(g_SelfKey, NULL); 210 } 211 212 206 213 /** 207 214 * Wrapper which unpacks the params and calls thread function. … … 243 250 rc = rtThreadMain(pThread, (uintptr_t)Self, &pThread->szName[0]); 244 251 245 pthread_setspecific(g_SelfKey, NULL);246 252 pthread_exit((void *)rc); 247 253 return (void *)rc; -
trunk/src/VBox/Runtime/r3/win/thread-win.cpp
r32914 r34256 78 78 TlsSetValue(g_dwSelfTLS, NULL); 79 79 } 80 } 81 82 83 void rtThreadNativeDestroy(PRTTHREADINT pThread) 84 { 85 if (pThread == (PRTTHREADINT)TlsGetValue(g_dwSelfTLS)) 86 TlsSetValue(g_dwSelfTLS, NULL); 80 87 } 81 88
Note:
See TracChangeset
for help on using the changeset viewer.