diff --git a/_demo/catomic/atomic.go b/_demo/catomic/atomic.go index e2ab9163..9125f42d 100644 --- a/_demo/catomic/atomic.go +++ b/_demo/catomic/atomic.go @@ -1,20 +1,20 @@ package main import ( - "github.com/goplus/llgo/c" "github.com/goplus/llgo/c/sync" ) func main() { var v int64 = 100 ret := sync.FetchAndAdd(&v, 1) - c.Printf(c.Str("FetchAndAdd: %ld, new: %ld\n"), ret, v) + println("ret:", ret, "v:", v) - chg := sync.CompareAndXchg(&v, 100, 102) - c.Printf(c.Str("CompareAndXchg: %ld, 100, new: %ld\n"), v, chg) - chg = sync.CompareAndXchg(&v, 101, 102) - c.Printf(c.Str("new: %ld, CompareAndXchg: %ld, 101\n"), v, chg) + ret = sync.CompareAndXchg(&v, 100, 102) + println("ret:", ret, "vs 100, v:", v) + + ret = sync.CompareAndXchg(&v, 101, 102) + println("ret:", ret, "vs 101, v:", v) ret = sync.FetchAndSub(&v, 1) - c.Printf(c.Str("FetchAndSub: %ld, new: %ld\n"), ret, v) + println("ret:", ret, "v:", v) } diff --git a/cl/_testlibc/atomic/in.go b/cl/_testlibc/atomic/in.go index c448d16d..8c05f87a 100644 --- a/cl/_testlibc/atomic/in.go +++ b/cl/_testlibc/atomic/in.go @@ -15,4 +15,7 @@ func main() { sync.CompareAndXchg(&v, 101, 102) c.Printf(c.Str("%ld\n"), v) + + sync.FetchAndSub(&v, 1) + c.Printf(c.Str("%ld\n"), v) }