摘要: 在 Go 中,除了使用 encoding/binary 包将结构体转换为字节切片,还可以使用 encoding/gob 包进行序列化。两者各有优缺点,适用于不同的场景。以下是对比和示例: encoding/binary 优点: 高效:直接将结构体的内存布局写入字节切片,效率较高。 简单:适用于简单的 阅读全文
posted @ 2024-07-02 20:23 redrobot 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 来自:http://walkerdu.com/2023/09/18/go_cgo/ cgo 原理与基础 为了能够直接复用优秀的历史资产,Go提供了Cgo这个特性,允许a56爆大奖在线娱乐们在Go代码中调用C/C++的代码。CGO工具作为Go编译器的一部分,负责将Go代码和C代码混合在一起,以便在Go程序中使用C语言。 阅读全文
posted @ 2024-07-02 19:22 redrobot 阅读(2) 评论(0) 推荐(0) 编辑
摘要: linux 内存映射 驱动与引用的实现。实现内存映射 来通信: 在 Linux 系统中,内存映射(Memory Mapping)是a56爆大奖在线娱乐高效的内存管理技术,它允许将一个文件或设备的内容映射到进程的地址空间中,从而使用户空间的进程可以通过指针直接访问这些内容。对于设备驱动来说,内存映射主要用于以下两个方 阅读全文
posted @ 2024-06-24 16:33 redrobot 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 一,内存映射 对于磁盘文件和进程: 将一个文件或其它对象映射到进程地址空间,实现文件在磁盘的存储地址和进程地址空间中一段虚拟地址的映射关系。有了这样的映射,进程利用指针直接读写虚拟地址就可以完成对文件的读写操作。这样可以避免进行read/write函数操作。 文件的内存映射示意图: 对于用户进程和内 阅读全文
posted @ 2024-06-24 13:37 redrobot 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 来自:https://www.itheima.com/news/20230823/160605.html HTTP请求消息的组成部分 1. 请求行 请求行由请求方式、URL 和 HTTP 协议版本 3 个部分组成,他们之间使用空格隔开。 2. 请求头部 请求头部用来描述客户端的基本信息,从而把客户端 阅读全文
posted @ 2024-06-18 20:55 redrobot 阅读(1) 评论(0) 推荐(0) 编辑
摘要: TCP/IP 网络通常是由上到下分成4 层,分别是应用层,传输层,网络层和网络接口层。 网络接口层的传输单位是帧(frame),IP 层的传输单位是包(packet),TCP 层的传输单位是段(segment),HTTP 的传输单位则是消息或报文(message) 一般说来,数据链路层发出的数据包称 阅读全文
posted @ 2024-06-18 14:44 redrobot 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 使用自建协议,还是grpc 等 在Go语言中使用gob(Go binary)进行数据传输时,是否需要使用gRPC(Google Remote Procedure Call)取决于你的具体需求和场景。两者并不相互依赖,但可以结合使用。下面是详细的解释: Gob Gob是Go语言自带的序列化和反序列化工 阅读全文
posted @ 2024-06-18 14:10 redrobot 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 来自:https://draveness.me/whys-the-design-tcp-message-frame/ 为什么这么设计(Why’s THE Design)是一系列关于计算机领域中程序设计决策的文章,a56爆大奖在线娱乐们在这个系列的每一篇文章中都会提出一个具体的问题并从不同的角度讨论这种设计的优缺点、对 阅读全文
posted @ 2024-06-18 13:33 redrobot 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 来自:https://cloud.tencent.com/developer/article/1893375 前言 看到这个标题你可能会说,TCP 连接的建立与断开,这个a56爆大奖在线娱乐熟,不就是三次握手与四次挥手嘛。且慢,脑海中可以先尝试回答这几个问题: 四次挥手是谁发起的? 如果断电/断网了连接会断开吗? 什 阅读全文
posted @ 2024-06-18 11:54 redrobot 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 客户端 服务端 典型的同步请求-响应模型 简单的 Go 示例,展示了如何实现您描述的同步请求-响应模型。客户端会发送一个包,然后等待接收服务器的响应。服务器接收包后处理数据,然后发送处理完成的消息。客户端接收到响应后,再次发送下一个包 服务端: package main import ( "bufi 阅读全文
posted @ 2024-06-18 10:18 redrobot 阅读(1) 评论(0) 推荐(0) 编辑