mirror of
https://github.com/reactos/reactos.git
synced 2024-09-19 01:00:51 +00:00
add RtlCreateCriticalSectionSpinCount + fix
svn path=/trunk/; revision=8868
This commit is contained in:
parent
29a9d5c519
commit
9d7050fddd
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: critical.c,v 1.19 2004/02/01 20:48:06 ekohl Exp $
|
/* $Id: critical.c,v 1.20 2004/03/24 23:43:52 gdalsnes Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS system libraries
|
* PROJECT: ReactOS system libraries
|
||||||
|
@ -29,6 +29,27 @@ RtlDeleteCriticalSection(PCRITICAL_SECTION CriticalSection)
|
||||||
CriticalSection->LockCount = -1;
|
CriticalSection->LockCount = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @implemented
|
||||||
|
*/
|
||||||
|
DWORD STDCALL
|
||||||
|
RtlSetCriticalSectionSpinCount(
|
||||||
|
LPCRITICAL_SECTION CriticalSection,
|
||||||
|
DWORD SpinCount
|
||||||
|
)
|
||||||
|
{
|
||||||
|
|
||||||
|
#ifdef MP
|
||||||
|
DWORD PrevSpinCount = CriticalSection->SpinCount;
|
||||||
|
CriticalSection->SpinCount = SpinCount;
|
||||||
|
return PrevSpinCount;
|
||||||
|
#else
|
||||||
|
return 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @implemented
|
* @implemented
|
||||||
*/
|
*/
|
||||||
|
@ -141,7 +162,11 @@ RtlInitializeCriticalSectionAndSpinCount (PCRITICAL_SECTION CriticalSection,
|
||||||
CriticalSection->LockCount = -1;
|
CriticalSection->LockCount = -1;
|
||||||
CriticalSection->RecursionCount = 0;
|
CriticalSection->RecursionCount = 0;
|
||||||
CriticalSection->OwningThread = (HANDLE)0;
|
CriticalSection->OwningThread = (HANDLE)0;
|
||||||
|
#ifdef MP
|
||||||
CriticalSection->SpinCount = SpinCount;
|
CriticalSection->SpinCount = SpinCount;
|
||||||
|
#else
|
||||||
|
CriticalSection->SpinCount = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
return NtCreateSemaphore (&CriticalSection->LockSemaphore,
|
return NtCreateSemaphore (&CriticalSection->LockSemaphore,
|
||||||
SEMAPHORE_ALL_ACCESS,
|
SEMAPHORE_ALL_ACCESS,
|
||||||
|
|
Loading…
Reference in a new issue