有人试过在开多个goroutine 调用dll吗?

wn0112 · · 316 次点击 · 开始浏览    置顶
有人试过在开多个goroutine 调用dll吗? 单 goroutine 调用dll 处理数据是没问题的,如果开多个goroutine就不行 ; 一开始我把加载起来的 dll 和 proc 定义为 全局变量,多个goroutine 共同使用,会崩溃,以为会冲突; 然后又尝试在每个goroutine 中各自加载dll ,声明proc ,还是会崩溃; 网上说的三种调用 dll 的方法均尝试了,一样的。 这个 dll 文件内定义了一些全局字符串数组,还有宏,只读不写的,应该没事吧? 有大牛能解释是怎么回事吗? ```go var dllParse, _ = syscall.LoadLibrary(DLL_RBSFILE) var rHeader, _ = syscall.GetProcAddress(dllParse, "r_header") var rChHeaders, _ = syscall.GetProcAddress(dllParse, "r_ch_headers") var rChData, _ = syscall.GetProcAddress(dllParse, "r_ch_data") ```

有疑问加站长微信联系

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:812540095

316 次点击  
加入收藏 微博
1 回复  |  直到 2020-06-20 21:46:48
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传