Grumpy: 使用Go来运行Python程序
介绍 Google 开源的 Grumpy,它把 Python 程序翻译成 Go 程序再编译运行,用 goroutine 替代线程以绕开 GIL 全局解释器锁。文章说明它与 PyPy 的区别并给出上手示例。
ARCHIVE / INDEX
按时间与主题浏览长期积累的技术文章。
介绍 Google 开源的 Grumpy,它把 Python 程序翻译成 Go 程序再编译运行,用 goroutine 替代线程以绕开 GIL 全局解释器锁。文章说明它与 PyPy 的区别并给出上手示例。
汇总 Go 性能优化技巧,包括 string 与 []byte 转换如何借助 unsafe 避免底层字节数组复制的开销,以及其他常见的高性能编码实践,帮助你写出更高效的 Go 代码。
汇总使用 cgo 的实用技巧,涵盖 C 基本数值类型在 Go 中的映射、结构体和联合体的访问方式、类型大小获取,以及 Go 处理 C union 类型的注意事项。
解读 Go 1.6 中 cgo 关于 Go 指针与 C 代码共享内存的新规则,说明运行时如何检测违规并崩溃程序,以及通过 GODEBUG=cgocheck 调整检查,帮助你写出与垃圾回收兼容的 cgo 代码。