diff src/os/unix/ngx_atomic.h @ 373:018569a8f09c

nginx-0.0.7-2004-06-30-19:30:41 import
author Igor Sysoev <igor@sysoev.ru>
date Wed, 30 Jun 2004 15:30:41 +0000
parents src/core/ngx_atomic.h@780e93985b93
children bd39260a1383
line wrap: on
line diff
copy from src/core/ngx_atomic.h
copy to src/os/unix/ngx_atomic.h
--- a/src/core/ngx_atomic.h
+++ b/src/os/unix/ngx_atomic.h
@@ -68,24 +68,6 @@ static ngx_inline uint32_t ngx_atomic_cm
 }
 
 
-#elif (WIN32)
-
-#define ngx_atomic_inc(p)       InterlockedIncrement((long *) p)
-#define ngx_atomic_dec(p)       InterlockedDecrement((long *) p)
-
-#if defined(__WATCOMC__) || defined(__BORLANDC__)
-
-#define ngx_atomic_cmp_set(lock, old, set)                                    \
-     (InterlockedCompareExchange((long *) lock, set, old) == old)
-
-#else
-
-#define ngx_atomic_cmp_set(lock, old, set)                                    \
-     (InterlockedCompareExchange((void **) lock, (void *) set, (void *) old)  \
-      == (void *) old)
-
-#endif
-
 #else
 
 typedef volatile uint32_t  ngx_atomic_t;
@@ -99,6 +81,8 @@ typedef volatile uint32_t  ngx_atomic_t;
 #endif
 
 
+void ngx_spinlock(ngx_atomic_t *lock, ngx_uint_t spin);
+
 #define ngx_trylock(lock)  (*(lock) == 0 && ngx_atomic_cmp_set(lock, 0, 1))
 #define ngx_unlock(lock)    *(lock) = 0