go相关内容

通过Windows cgo-> gcc-> ld的DLL链接给出“undefined-reference-to(function)”。错误

(非常详细的问题报告 - tl;博士在底部!) 我真的更喜欢GLFW给Glut并希望得到它的 Golang绑定在Windows 64位下使用Go 1.0.1 64位。在Linux下,它的工作完美无瑕。这在Windows下原则上是可行的 - GitHub用户chsc 已管理 这样做,但他在Win32上,他的提示还没有解决我的问题。然而,我确实有一个基于tdm64-gcc-4.6.1设置的完整而 ..
发布时间:2018-04-21 10:41:20 其他开发

(gcc)中的封装结构去

我有一些旧的C代码,使得有点使用压缩结构。我正在研究使用Go作为这个代码的包装,但是很难找到一种方法来传递或者为这些结构写定义。 示例: p> import“unsafe”; 类型AlignTest结构{ c字节; y int16; z int16; q int32; } func main(){ vr:= new(AlignTest); ..
发布时间:2018-04-20 17:29:30 其他开发

GCC无法编译Go程序

包主 $ b在Go中使用2D游戏库编写了一个非常简单的程序。 $ b导入( “github.com/hajimehoshi/ebiten” “github.com/hajimehoshi/ebiten/ebitenutil” ) const screenWidth,screenHeight = 320,240 func update(screen * ebiten.Image)er ..
发布时间:2018-04-20 17:05:41 其他开发

清除golang中的切片可保证垃圾收集?

我想实现基于时间的槽来保存使用golang切片的数据。我设法想出了这样一个去程序,它也有效。但是我对垃圾收集和这个程序的一般性能几乎没有问题。这个程序是否保证一旦切片等于零就垃圾收集物品?在洗牌时,我希望这个程序不会进行任何深层复制。 type DataSlots struct { slotDuration int //以毫秒为单位 slots [] [] interface {} ..
发布时间:2018-04-19 18:27:06 其他开发

默认情况下在Go中确定了哪些对象,以及它的一些缺陷是什么?

函数 runtime.SetFinalizer (x,f interface { })将与 x 关联的终结器设置为 f 。 默认情况下定义了哪些类型的对象? 默认情况下定义了这些对象会导致一些非预期的陷阱吗? 解决方案 以下对象默认定价: os。文件:文件在对象被自动关闭时垃圾收集。 :定稿将释放与该流程相关的所有资源。在Unix上,这是一个无操作。在Windows上,它 ..
发布时间:2018-04-19 18:20:22 其他开发

转:内存使用量过大,内存泄漏

目前我的应用程序很快就达到了32GB的内存,开始交换,然后被系统杀死。 我不明白这是怎么回事,因为所有变量都是可收集的(在函数中并且很快发布),除了 Trainer 结构中的> TokensStruct 和 TokensCount 。 TokensCount 只是一个uint。 TokensStruct 是[5] uint32和string的1,000,000行片段,所以这意味着20个字节+ ..
发布时间:2018-04-19 18:19:49 其他开发

在Go中,变量何时变得无法访问?

Go 1.7 beta 1今天早上发布,这里是 Go 1.7的发行注记草稿一>。一个新的函数 KeepAlive 被添加到包 runtime 中。 runtime.KeepAlive 给出了一个例子: type文件struct {d int} d,err:= syscall.Open(“ / file / path“,syscall.O_RDONLY,0) // ...做些事情如果错误 ..
发布时间:2018-04-19 18:19:30 其他开发

如何最小化Go中的垃圾收集?

有时候你可能想要避免/最小化垃圾收集器,所以我想确定如何去做。 我认为下一个是正确: 在函数的开头声明变量。 使用array而不是slice 。 避免垃圾是相对直截了当的。你需要了解分配的位置,看看你是否可以避免分配。 首先,在函数的开头声明变量不会有帮助。编译器不知道其中的差别。然而,人们会知道它们之间的差异,它会让它们感到烦恼。 使用一个数组而不是一个分片是可行的,但 ..
发布时间:2018-04-19 18:05:42 其他开发

FreeOSMemory()在生产中

我在有tcp服务器的软件包中使用goroutines。大多数情况下,响应非常重,但是当程序结束时,它不会从内存中清除。 func Handle(){ service:=“:7777” tcpAddr,err:= net .ResolveTCPAddr(“tcp4”,service) checkError(err) listener,err:= net.ListenTCP(“tcp” ..
发布时间:2018-04-19 18:03:55 其他开发

1.5G的内存容量有多快?

Java不能使用兆兆字节的RAM,因为GC暂停时间太长(分钟)。随着Go GC的最新更新,我想知道它的GC暂停是否足够短,可用于大量的RAM,比如几TB。 这有没有任何基准呢?我们现在可以使用垃圾收集语言和这么多的RAM吗? 现在不能在单个Go流程中使用TB的RAM。 Max在Linux上的容量为512 GB,而我所见过的大部分内容都是240 GB。 对于当前的后台GC,GC 工作负载往往 ..
发布时间:2018-04-19 17:51:38 其他开发

如何在Go中发布http.Client?

我为HTTP2连接构建了一个 http.Client ,我需要做些什么来释放客户端和资源? 感谢。 解决方案 http.Client 不需要任何特殊的方式来释放”已使用“的资源。当它变得无法访问时,它使用的内存将被垃圾收集器收回。 http.Client 不会存储连接或状态信息。该文档甚至指出应该重用 http.Client : $ b 客户端的传输通常具有内部状态(高 ..
发布时间:2018-04-19 17:48:48 其他开发

Go使用哪种垃圾收集?

Go是一种垃圾回收语言: http:/ /golang.org/doc/go_faq.html#garbage_collection 这里说它是一个标记和清理垃圾收集器,但它不深入研究细节,并且正在进行更换......但是,自从Go发布以来,这一段似乎没有进行过更新。 这仍然是标记和-扫?它是保守的还是精确的?它是否是代数? 解决方案 Go 1.4的垃圾收集器的计划: ..
发布时间:2018-04-19 17:44:00 其他开发

Go的头等功能

我来自具有一流功能支持的JavaScript。例如,您可以: 将函数作为参数传递给另一个函数 返回一个函数从一个函数。 有人可以给我一个例子,说明我如何在Go中执行此操作? 解决方案 去语言和函数式编程可能会有所帮助。在这篇博文中: $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $' func foo()string { return“ ..
发布时间:2018-04-18 15:36:49 其他开发

为什么没有Go的泛型?

免责声明:我现在只玩了一天Go,所以很有可能我错失了很多。 有人知道为什么会有没有真正的支持泛型/模板/ WhatsInAName在Go?所以有一个通用的 map ,但这是由编译器提供的,而Go程序员不能编写自己的实现。所有关于使Go尽可能正交的讨论,为什么我可以使用泛型类型但不创建新类型? 特别是当涉及函数式编程时,那里是lambdas,甚至是闭包,但是对于缺乏泛型的静态类型系统,我 ..
发布时间:2018-04-18 15:09:36 其他开发

计算函数被调用的次数

我怎么能在 go ? 中优雅地使用它。在python中,我可以使用如下属性: / p> def function(): function.counter + = 1 function.counter = 0 go 有相同的机会吗? 解决方案 让我引用atomic package文档: $ b Package atomic提供了低级原 ..
发布时间:2018-04-17 19:20:34 其他开发

Go函数通过变量访问

功能如下: append(slice,0)//用于切片 len(切片),cap(切片)//再次为切片 等等。作为一个来自C语言的人,我想知道: 1)这些函数是否可以通过变量本身调用(如 map.delete (“答案”))? 2)这是一种常见的做法(定义一个通用函数并让它计算出类型和内容它应该这样做),还是仅仅为内置类型。例如,如果我要定义自己的类型,比如 MyCoolL ..
发布时间:2018-04-17 18:29:10 其他开发