diff options
author | Benny Prijono <bennylp@teluu.com> | 2005-11-06 09:37:47 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2005-11-06 09:37:47 +0000 |
commit | 7c7300624eb867fa7c1ea52b9c636889aac60e80 (patch) | |
tree | 58460baa296e7eb6bd775d060f2a1e960717f565 /pjlib/src/pjlib-test/atomic.c | |
parent | 58aee2809c36f43a3b66dac7d9db5d13070114b9 (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.c | 24 |
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 */ |