コード例 #1
0
ファイル: callback.go プロジェクト: RajibTheKing/gcc
func CgoCallbackGC() {
	const P = 100
	done := make(chan bool)
	// allocate a bunch of stack frames and spray them with pointers
	for i := 0; i < P; i++ {
		go func() {
			grow()
			done <- true
		}()
	}
	for i := 0; i < P; i++ {
		<-done
	}
	// now give these stack frames to cgo callbacks
	for i := 0; i < P; i++ {
		go func() {
			C.foo()
			done <- true
		}()
	}
	for i := 0; i < P; i++ {
		<-done
	}
	fmt.Printf("OK\n")
}
コード例 #2
0
ファイル: cgotest.go プロジェクト: RJAugust/delve
func main() {
	runtime.GOMAXPROCS(runtime.NumCPU())
	fmt.Println(C.GoString(C.foo()))
}
コード例 #3
0
func main() {
	// Don't report error for package "C". It's for Cgo.
	println(C.bar)
	println(C.foo())
}
コード例 #4
0
func main() {
	fmt.Println(C.GoString(C.foo()))
}
コード例 #5
0
ファイル: main.go プロジェクト: jamesmarva/practice
func main() {
	fmt.Println(C.count)
	C.foo()
}
コード例 #6
0
ファイル: cgobench.go プロジェクト: sillyousu/goplay
func CallCgo(n int) {
	for i := 0; i < n; i++ {
		C.foo()
	}
}
コード例 #7
0
ファイル: main.go プロジェクト: sandro/go_callback
func main() {
	fmt.Println("Go: main")
	C.registerIt(C.foo())
}
コード例 #8
0
ファイル: test.go プロジェクト: freewu/learn
func main() {
	fmt.Println("From libfoo: ", C.foo())
}
コード例 #9
0
ファイル: trivial.go プロジェクト: Greentor/go
func Bar() {
	C.foo()
}