📂 FileMgr
📍
/
opt
/
golang
/
1.22.0
/
src
/
cmd
/
cgo
/
internal
/
testso
/
testdata
/
so
✏️ c
⬅ Kembali
// Copyright 2011 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. //go:build ignore #ifdef WIN32 // A Windows DLL is unable to call an arbitrary function in // the main executable. Work around that by making the main // executable pass the callback function pointer to us. void (*goCallback)(void); __declspec(dllexport) void setCallback(void *f) { goCallback = (void (*)())f; } __declspec(dllexport) void sofunc(void); #elif defined(_AIX) // AIX doesn't allow the creation of a shared object with an // undefined symbol. It's possible to bypass this problem by // using -Wl,-G and -Wl,-brtl option which allows run-time linking. // However, that's not how most of AIX shared object works. // Therefore, it's better to consider goCallback as a pointer and // to set up during an init function. void (*goCallback)(void); void setCallback(void *f) { goCallback = f; } #else extern void goCallback(void); void setCallback(void *f) { (void)f; } #endif // OpenBSD and older Darwin lack TLS support #if !defined(__OpenBSD__) && !defined(__APPLE__) __thread int tlsvar = 12345; #endif void sofunc(void) { goCallback(); }
💾 Simpan
Batal
⬅ testdata
5 item
Nama
Tipe
Ukuran
Diubah
Aksi
📄
cgoso.c
c
325 B
2024-02-02 18:09
✏️
👁️
🔤
🗑
🔵
cgoso.go
go
761 B
2024-02-02 18:09
✏️
👁️
🔤
🗑
📄
cgoso_c.c
c
1.2 KB
2024-02-02 18:09
✏️
👁️
🔤
🗑
🔵
cgoso_unix.go
go
428 B
2024-02-02 18:09
✏️
👁️
🔤
🗑
🔵
main.go
go
247 B
2024-02-02 18:09
✏️
👁️
🔤
🗑
✏️ Rename
Nama Baru
Simpan
Batal