有时候我们需要 Ctrl+C 强行退出程序,并且退出之前还需要做一些收尾工作,比如缓存落盘等。代码如下 closing,代表程序退出,但是清理工作还没做; closed,代表清理工作已经做完。
切片的内存大小 上面声明了一个切片,然后打印出sizeof的值为24,但是不管slice里的元素为多少,sizeof返回的数据都是24。 原因:官方文档解释 Sizeof takes an expression x of any type and returns the size in bytes …
垃圾回收(Garbage Collection,简称GC)是编程语言中提供的自动的内存管理机制,自动释放不需要的对象,让出存储器资源,无需程序员手动执行。 Golang中的垃圾回收主要应用三色标记法,GC过程和其他用户goroutine可并发运行,但需要一定时间的STW(stop the wor…
讲真的,其实我挺讨厌条件编译这个东西的,也许是因为工作中很少用到的原因,但最主要的是我接手维护的项目代码中有一堆条件编译标签,导致我的 Idea 加载代码后不能通过鼠标很好的追踪代码。 讨厌归讨厌,但是我们还是得了解这个东西。 Go语言的条件编译是由go/build包支持的,通过条件编译我们可以实现…