atomic, atomicCmpXchg
This commit is contained in:
18
cl/_testlibc/atomic/in.go
Normal file
18
cl/_testlibc/atomic/in.go
Normal file
@@ -0,0 +1,18 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"github.com/goplus/llgo/c"
|
||||
"github.com/goplus/llgo/c/sync"
|
||||
)
|
||||
|
||||
func main() {
|
||||
var v int64 = 100
|
||||
sync.FetchAndAdd(&v, 1)
|
||||
c.Printf(c.Str("%ld\n"), v)
|
||||
|
||||
sync.CompareAndXchg(&v, 100, 102)
|
||||
c.Printf(c.Str("%ld\n"), v)
|
||||
|
||||
sync.CompareAndXchg(&v, 101, 102)
|
||||
c.Printf(c.Str("%ld\n"), v)
|
||||
}
|
||||
Reference in New Issue
Block a user