golang main 代码
文件路径:/src/runtime/testdata/testwinlib/main.go
/go:build windows && cgo
/ +build windows,cgo
package main
/ #include <windows.h>
/ typedef void(*callmeBackFunc)();
/ static void bridgeCallback(callmeBackFunc callback) {
/ callback();
/}
import "C"
/ CallMeBack call backs C code.
/
/export CallMeBack
func CallMeBack(callback C.callmeBackFunc) {
C.bridgeCallback(callback)
}
/ Dummy is called by the C code before registering the exception/continue handlers simulating a debugger.
/ This makes sure that the Go runtime's lastcontinuehandler is reached before the C continue handler and thus,
/ validate that it does not crash the program before another handler could take an action.
/ The idea here is to reproduce what happens when you attach a debugger to a running program.
/ It also simulate the behavior of the .Net debugger, which register its exception/continue handlers lazily.
/
/export Dummy
func Dummy() int {
return 42
}
func main() {}