编辑:这个问题没有实际意义。我误读了提交的日期,它包含在 Go 工具的现有版本中。谢谢,詹姆斯!
似乎即将发布的 Go (1.3) 将允许非 Go 线程调用 CGO 回调。
我想知道迄今为止人们通常会做什么来绕过这个限制。
也就是说,我有一个自己创建线程的第三方库,我想从这些线程中获取一些信息到 Go 代码中。
某种从 C 线程到代码“C”端的 Go 线程的切换机制?有什么方法可以在不调用 Go 的情况下将消息放入队列?其他想法?
编辑:这个问题没有实际意义。我误读了提交的日期,它包含在 Go 工具的现有版本中。谢谢,詹姆斯!
似乎即将发布的 Go (1.3) 将允许非 Go 线程调用 CGO 回调。
我想知道迄今为止人们通常会做什么来绕过这个限制。
也就是说,我有一个自己创建线程的第三方库,我想从这些线程中获取一些信息到 Go 代码中。
某种从 C 线程到代码“C”端的 Go 线程的切换机制?有什么方法可以在不调用 Go 的情况下将消息放入队列?其他想法?
您强调的提交是从去年 2 月开始的,那是在 Go 1.1 发布之前。它还引用了标记为 的问题 4435Go1.1
。
我不确定人们之前做了什么来绕过限制(如果确实可能的话),但是对于该语言的最后两个发布版本,没有必要使用变通方法。我已经在我的一些项目中毫无意外地利用了这种能力。