CURRENT PATH:
/
opt
/
golang
/
1.22.0
/
src
/
cmd
/
cgo
/
internal
/
testcshared
/
testdata
/
libgo
/
KEMBALI
|
HOME
Upload File Local:
Upload
Upload via URL:
Download
Dir Baru
File Baru
Editing:
libgo.go
// Copyright 2015 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package main import ( "syscall" _ "testcshared/p" "time" ) import "C" var initCh = make(chan int, 1) var ranMain bool func init() { // emulate an exceedingly slow package initialization function time.Sleep(100 * time.Millisecond) initCh <- 42 } func main() { ranMain = true } //export DidInitRun func DidInitRun() bool { select { case x := <-initCh: if x != 42 { // Just in case initCh was not correctly made. println("want init value of 42, got: ", x) syscall.Exit(2) } return true default: return false } } //export DidMainRun func DidMainRun() bool { return ranMain }
SIMPAN
BATAL