summaryrefslogtreecommitdiff
path: root/pjlib/src/pjlib-test/atomic.c
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2005-11-06 09:37:47 +0000
committerBenny Prijono <bennylp@teluu.com>2005-11-06 09:37:47 +0000
commit7c7300624eb867fa7c1ea52b9c636889aac60e80 (patch)
tree58460baa296e7eb6bd775d060f2a1e960717f565 /pjlib/src/pjlib-test/atomic.c
parent58aee2809c36f43a3b66dac7d9db5d13070114b9 (diff)
Changed ioqueue to allow simultaneous operations on the same key
git-svn-id: http://svn.pjsip.org/repos/pjproject/main@11 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjlib/src/pjlib-test/atomic.c')
-rw-r--r--pjlib/src/pjlib-test/atomic.c24
1 files changed, 16 insertions, 8 deletions
diff --git a/pjlib/src/pjlib-test/atomic.c b/pjlib/src/pjlib-test/atomic.c
index 429085e1..09bdfdba 100644
--- a/pjlib/src/pjlib-test/atomic.c
+++ b/pjlib/src/pjlib-test/atomic.c
@@ -47,21 +47,29 @@ int atomic_test(void)
/* get: check the value. */
if (pj_atomic_get(atomic_var) != 111)
return -30;
-
- /* increment. */
- if (pj_atomic_inc(atomic_var) != 112)
+
+ /* increment. */
+ pj_atomic_inc(atomic_var);
+ if (pj_atomic_get(atomic_var) != 112)
return -40;
- /* decrement. */
- if (pj_atomic_dec(atomic_var) != 111)
+ /* decrement. */
+ pj_atomic_dec(atomic_var);
+ if (pj_atomic_get(atomic_var) != 111)
return -50;
- /* set */
- if (pj_atomic_set(atomic_var, 211) != 111)
+ /* set */
+ pj_atomic_set(atomic_var, 211);
+ if (pj_atomic_get(atomic_var) != 211)
return -60;
+
+ /* add */
+ pj_atomic_add(atomic_var, 10);
+ if (pj_atomic_get(atomic_var) != 221)
+ return -60;
/* check the value again. */
- if (pj_atomic_get(atomic_var) != 211)
+ if (pj_atomic_get(atomic_var) != 221)
return -70;
/* destroy */