- 博客(6)
- 收藏
- 关注
原创 记一次go程序产生coredump:fatal error: concurrent map iteration and map write
产生原因:map是一个引用类型,对一个map同时进行读操作和写操作时,有概率触发该错误定位问题:1.结合日志信息,找到失去日志的点,一定要注意代码中异步处理或者多线程处理的地方2.结果coredump栈信息,逐步找到产生coredump的点解决问题:1.优化处理流程,异步尝试修改为同步2.如果是多线程触发的,可以对map加锁处理,这个可以去必应搜一下...
2021-08-30 19:53:17
415
原创 proto对象序列化与反序列化
proto::object.SerializeToString(&rspBuf)与proto::object.ParseFromString(buf)一对关系buf = proto::object.Utf8DebugString()与google::protobuf::TextFormat::ParseFromString(buf, &proto::object)一对关系
2022-04-25 14:21:35
515
转载 protobuf 如何安装?
下载安装包下载地址1、首先确定自己当前linux版本(当前版本为x86_64)复制代码uname -aLinux localhost.localdomain 3.10.0-1127.el7.x86_64 #1 SMP Tue Mar 31 23:36:51 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux2、选择相应的版本下载并解压到当前目录复制代码wget https://github.com/protocolbuffers/protobuf
2022-01-02 19:04:32
4924
原创 如果在Ubuntu 16.04里安装vim 8.0版本
虽然 Vim 8.0 已经正式发布,但要进入各大 Linux 发行版的官方源还需要很长一段时间。幸运的是,已经有人为 Ubuntu 和其衍生版本制作了非官方 PPA 进行安装,不过此种方法有风险,建议大家只用于测试环境。sudoadd-apt-repositoryppa:jonathonf/vimsudoaptupdatesudoaptinstallvim另外,卸载vim方法:sudo apt-get remove vim vim-runtime vim-tiny vim-...
2021-11-04 11:42:30
368
转载 MySQL 性能优化神器 Explain 使用分析
直接上链接https://segmentfault.com/a/1190000008131735
2021-10-09 19:29:16
108
转载 Go语言之unsafe.sizeof()
摘自:https://blog.youkuaiyun.com/buptwcx/article/details/107784638初遇unsafe.Sizeof()时,以为Go语言中的sizeof和C语言的sizeof不太一样,对于算出的值也是一脸懵逼。深入了解才发现两者并没有区别,是自己误解了。最终的运算结果是:3,16对于接触过python的同学来说,3很容易理解,但是16从何而来呢?原来是因为unsafe.Sizeof返回的是数据类型的大小,而string在Go中并不是直存类型,它是一.
2021-08-18 14:48:42
263
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅