// main.go

package main

// #include <stdlib.h>
import "C"
import (
    "runtime/debug"
    "unsafe"
)

func main() {
    // disable garbage collection
    debug.SetGCPercent(-1)

    ptr := unsafe.Pointer(C.malloc(C.size_t(0x10)))
    C.free(ptr)
}


되긴 됨


물론 코드 중에 힙 메모리 할당하는 곳이 있으면

runtime.GC() 호출해서 수동으로 GC해줘야 됨
(syscall.MMap으로 할당한 건 syacall.MUnMap으로 해제 가능)

힙으로 가는 게 있는지는 컴파일 시 -gcflags -m 옵션으로 검사 가능