You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by mt...@apache.org on 2009/08/17 14:21:38 UTC

svn commit: r804950 - in /commons/sandbox/runtime/trunk/src/main/native: include/arch/windows/acr_arch_private.h os/win32/ios.c

Author: mturk
Date: Mon Aug 17 12:21:37 2009
New Revision: 804950

URL: http://svn.apache.org/viewvc?rev=804950&view=rev
Log:
Use spincount for critical section. Should favor the multi processor systems

Modified:
    commons/sandbox/runtime/trunk/src/main/native/include/arch/windows/acr_arch_private.h
    commons/sandbox/runtime/trunk/src/main/native/os/win32/ios.c

Modified: commons/sandbox/runtime/trunk/src/main/native/include/arch/windows/acr_arch_private.h
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/include/arch/windows/acr_arch_private.h?rev=804950&r1=804949&r2=804950&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/include/arch/windows/acr_arch_private.h (original)
+++ commons/sandbox/runtime/trunk/src/main/native/include/arch/windows/acr_arch_private.h Mon Aug 17 12:21:37 2009
@@ -71,6 +71,12 @@
  */
 #define ACR_DELTA_EPOCH_IN_USEC   11644473600000000I64
 
+/** 
+ * Critical section spin count
+ * XXX: MSVCRT uses 4000 which might not be an optimal value 
+ */
+#define ACR_SPINCOUNT 4000 
+
 /**
  * Include needed functions from portable layer
  */

Modified: commons/sandbox/runtime/trunk/src/main/native/os/win32/ios.c
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/os/win32/ios.c?rev=804950&r1=804949&r2=804950&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/os/win32/ios.c (original)
+++ commons/sandbox/runtime/trunk/src/main/native/os/win32/ios.c Mon Aug 17 12:21:37 2009
@@ -105,7 +105,7 @@
      */
     __bitmap[0] = 0xFF;
     __bmp_hint  = 1;
-    InitializeCriticalSection(&ios_lock);
+    InitializeCriticalSectionAndSpinCount(&ios_lock, ACR_SPINCOUNT);
 
     return 0;
 }