lock for ++nthreadPrivate

This commit is contained in:
Marty Kraimer
2000-03-14 21:18:05 +00:00
parent 7ffd786c1c
commit f809f3a716
+5
View File
@@ -241,9 +241,14 @@ void threadShow(threadId id,unsigned int level)
*/
threadPrivateId threadPrivateCreate()
{
static int lock = 0;
threadPrivateId id;
threadInit();
/*lock is necessary because ++nthreadPrivate may not be indivisible*/
while(!vxTas(&lock)) taskDelay(1);
id = (threadPrivateId)++nthreadPrivate;
lock = 0;
return(id);
}