Go语言中文网 为您找到相关结果 2

【疑难杂症】【GC】Go 程序调用 Windows DLL 的正确姿势是什么?

各位老师、前辈、同学们,大家好! 我最近在使用 Go 语言调用 Windows dll 时遇到了一个问题,这个问题具体表现为 Go 语言中的字符串传递给 dll 之后,如果 dll 里的函数执行较为缓慢的话,则 Go 语言字符串里的内容可能会被 gc 回收掉,从而导致 dll 里的函数读取到的内容是错误的。 下面是测试代码(go 语言部分): ```go package main import ( "fmt" "os" "syscall" "time" "unsafe" ) var ( fnFindBUG *syscall.Proc ) func main() { dll := syscall.MustLoadDLL("f...阅读全文

从TCP三次握手说起--浅析TCP协议中的疑难杂症

引言 说到TCP协议,相信大家都比较熟悉了,对于TCP协议总能说个一二三来,但是TCP协议又是一个非常复杂的协议,其中有不少细节点让人头疼点。本文就是来说说这些头疼点的,浅谈一些TCP的疑难杂症。那么从哪说起呢?当然是从三次握手和四次挥手说起啦,可能大家都知道TCP是三次交互完成连接的建立,四次交互来断开一个连接,那为什么是三次握手和四次挥手呢?反过来不行吗? 1. 疑症(1)TCP的三次握手、四次挥手 下面两图大家再熟悉不过了,TCP的三次握手和四次挥手见下面左边的”TCP建立连接”、”TCP数据传送”、”TCP断开连接”时序图和右边的”TCP协议状态机” TCP三次握手、四次挥手时序图 TCP协议状态机 要弄清TCP建立连接需要几次交互才行,我们需要弄清建立连接进行初始化的目标是什么。T...阅读全文

博文 2017-08-12 20:15:04 腾讯WeTest