diff src/os/win32/ngx_atomic.h @ 561:e48ebafc6939 release-0.3.2

nginx-0.3.2-RELEASE import *) Feature: the Sun Studio 10 C compiler support. *) Feature: the "proxy_upstream_max_fails", "proxy_upstream_fail_timeout", "fastcgi_upstream_max_fails", and "fastcgi_upstream_fail_timeout" directives.
author Igor Sysoev <igor@sysoev.ru>
date Wed, 12 Oct 2005 13:50:36 +0000
parents d7c90bb5ce83
children 9c2f3ed7a247
line wrap: on
line diff
--- a/src/os/win32/ngx_atomic.h
+++ b/src/os/win32/ngx_atomic.h
@@ -14,14 +14,10 @@
 
 #define NGX_HAVE_ATOMIC_OPS   1
 
-typedef int32_t  ngx_atomic_int_t;
-typedef uint32_t  ngx_atomic_uint_t;
+typedef int32_t                     ngx_atomic_int_t;
+typedef uint32_t                    ngx_atomic_uint_t;
 typedef volatile ngx_atomic_uint_t  ngx_atomic_t;
-#define NGX_ATOMIC_T_LEN  sizeof("-2147483648") - 1
-
-
-#define ngx_atomic_inc(p)       InterlockedIncrement((long *) p)
-#define ngx_atomic_dec(p)       InterlockedDecrement((long *) p)
+#define NGX_ATOMIC_T_LEN            sizeof("-2147483648") - 1
 
 
 #if defined( __WATCOMC__ ) || defined( __BORLANDC__ ) || ( _MSC_VER >= 1300 )
@@ -42,6 +38,9 @@ typedef volatile ngx_atomic_uint_t  ngx_
 #endif
 
 
+#define ngx_atomic_fetch_add(p, add) InterlockedExchangeAdd((long *) p, add)
+
+
 void ngx_spinlock(ngx_atomic_t *lock, ngx_uint_t spin);
 
 #define ngx_trylock(lock)  (*(lock) == 0 && ngx_atomic_cmp_set(lock, 0, 1))