加载中
c语言uthash库使用案例

字符串指针类型的键值 自定义结构体device_map,char *device_name;是字符串指针类型的键值,int id;代指其他数据,后面将替换为结构体。 struct device_map *devices = NULL;全局map,必须给...

2023/01/11 11:05
113
利用valgrind协助定位内存泄漏问题

因为cgo代码大部分依赖于庞大的c项目,首次写c项目,不可避免地出现大量内存泄漏问题;为了定位和解决,动用了valgrind。 由于项目是cgo的,编译不从c开始,因此很多熟悉c、熟悉go但不熟悉c...

2022/12/29 11:13
161
liboqs-go库在Mac编译使用

liboqs-go是liboqs——量子安全密码算法的开源C库的go封装 将在mac m1上部署和开发使用,所以简单记录下过程 部署 # 安装基础依赖工具 brew install cmake ninja openssl@1.1 wget doxygen ...

2022/10/20 16:41
129
mac pro m1 m2 安装破解 Parallels Desktop 18

环境 硬件版本:mac pro 2021 m1 系统版本:macOS Monterey 12.6(21G115) 2. 操作步骤 安装Parallels Desktop 18.0.1-53056 注意版本一定要是这个,因为激活脚本写死了有判断的。 https://do...

c代码打包so动态链接库 & cgo调用so & 类型转换

感觉cgo挺多坑,需要先做个测试项目来确定基础问题如何解决 将记录如何做动态链接库、cgo与so动态链接库如何交互、两边的数据如何转换 1. 目录结构 sotest ├── go.mod // mod叫test ├──...

2022/08/17 15:18
794
编译libwireshark动态链接库

总目标:用golang封装出wireshark解析协议的功能,以提供给上层应用调用 总体思路:wireshark源码 -> 编译libwireshark.so等动态链接库 -> 用golang封装协议解析功能 -> 上层服务直接调用 1....

2022/08/10 16:01
1.1K
gopacket 自定义工业协议S7并解析

s7协议详情介绍:siemens_s7协议 目录结构 s7 ├── cotp │ └── cotp.go ├── s7Comm │ └── s7Comm.go ├── s7_test.go └── tpkt └── tpkt.go 协议层级:tcp-tpkt-cotp-s...

2022/08/08 10:57
773
gopacket 解析工业协议 modbus 过程记录

gopacket 解析工业协议 modbus 过程记录 由上一篇gopacket 解析工业协议 modbusTCP 过程记录解决了一些基础问题,这一篇开始正式模拟modbus协议本身的数据结构 1. 分析 Modbus协议格式 modb...

2022/07/28 15:31
446
gopacket解析工业协议modbusTCP过程记录

问题记录 gopacket未能识别其"支持的"协议——modbus: 在windows用Modbus Slave仿真,golang写逻辑访问modbus设备并读取数据,wireshark抓到包,用gopacket分析,没有将协议匹配成其定义好的...

2022/07/25 15:26
3.1K
dubbo3 用 grpc 协议与 go 项目通信【go部分】

go-zero(grpc client) -> java-dubbo(grpc server) 这里用go-zero项目做个示例,主要完成的事左侧部分: demoGo示例 环境信息: go-zero v1.3.4 go1.17.11 darwin/arm64 grpc v1.46.2 proto...

dubbo3用grpc协议与go项目通信【java部分】

go-zero(grpc client) -> java-dubbo(grpc server) demo项目github 个人要求: 不使用注册中心 使用grpc协议交互,protobuf生成java和go的stub 因需要对接的系统为java,其提供的demo是java的...

mac 配置jdk maven idea 备份

卸载mac openjdk cd /Library/Java sudo rm -rf JavaVirtualMachines 测试 /usr/libexec/java_home -V java --version 测试结果 此时就可以了 The operation couldn’t be completed. Unabl...

2022/06/16 11:19
319
go asynq 异步任务(延迟触发)简单案例及奇怪的错误

异步任务案例 1.1. task/task.go 定义初始化任务、处理任务的方法 package task import ( "context" "encoding/json" "fmt" "time" "github.com/hibiken/asynq" ) const ( TypeExample = "...

2022/06/14 19:59
4.9K
panic: rpc error: code = Unavailable desc = failed to receive server preface within timeout

http服务调用一个开源的rpc服务(dtm)时候遇到这个错误,待解决

2022/06/09 13:35
1.4K
用ants协程池、sync.Map、HMSet优化逻辑

用ants协程池管理协程,并发执行自定义方法,并将结果并发存储到sync.Map,最后再将sync.Map转换为普通map,用redis的HMSet批量存储。 之前的方案是:野生goroutine用带缓存的channel控制并发...

go rocketmq 并发订阅启动不同topic的多个消费者造成的竞态问题

由于某些原因,需要在一个服务中,同时启动多个rocketmq的消费者,订阅消费不同的topic并分流到不同服务; 在main方法 中用goroutine并发订阅不同的topic并启动,造成了竞态问题: 代码是这样...

2022/06/09 10:05
1.3K
go rocketmq client日志级别修改

// rocketmq日志级别设置为warn rlog.SetLogLevel("warn")

2022/06/08 15:54
1.3K
解决nftables Error: Could not process rule: File exists

环境:centos7 内核 5.12.12-1.el7.elrepo.x86_64 [sudo uname -nr] 版本:nftables v0.8 (Joe Btfsplk) [sudo nft -v] 问题还原 我这边有个nftables的set类型,先查询 -> 再删除 -> 然后再重...

go 用策略模式优化switch case逻辑实践

背景 需要对企业微信解析出的工单数据进行分流,使其进入不同的处理逻辑; 最初的写法是使用switch-case语句,此时工单数目并不多,处理逻辑也都写在同一文件下; 如果要进行新增处理逻辑的话...

2022/05/13 23:03
633
gorm go-zero废弃备份

svcContext // InitMysqlClient 初始化mysql客户端 func InitMysqlClient(c config.MysqlConf) (engine *gorm.DB) { sqlDB, err := sql.Open("mysql", c.DataSource) if err != nil { panic...

2022/05/10 01:37
453

没有更多内容

加载失败,请刷新页面

返回顶部
顶部