![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
问题解决
文章平均质量分 61
guotianqing
这个作者很懒,什么都没留下…
展开
-
protobuf解析出错:Windows与Linux通信之string乱码
现象Windows上程序与Linux上程序通信,具体为Windows程序读取机器上一个文件,把数据信息发送到Linxu进程。Linxu进程负责把结构体使用protobuf编码,写入redis,然后在有人请求的时候读出来展示。问题就出在了,编码和写入都成功了,查询的时候却报pb解析失败,一时摸不到头脑。定位及解决经过跟踪和分析,结构体中有一string,当windows进程读取到的该字段为英文时,到Linux进程中显示是正常的。当该字段为中文时,Linux进程日志中显示该字段为乱码:定位是原创 2021-06-09 07:44:10 · 2531 阅读 · 0 评论 -
zmq.hpp编译报错:‘is_trivially_copyable’ is not a member of ‘std’
现象在ubuntu18.04上编译好的代码,拉到centos7上编译时,报错如下:是zmq.hpp报的错,已经使用-std=c++11选项。使用zmq库的是libzmq_4.3.2,zmq.hpp来自cppzmq,它是在libzmq上做了一层c++的封装。定位网上查了一下,有说是GCC版本太低导致的。从ubuntu18.04到centos7,gcc的版本也由7.5.0下降到了4.8.5。有可能就试一下,升级gcc,注意,不建议这样操作,因为一旦升级了gcc,原来在该服务器上编译的代码可能原创 2021-05-23 15:15:12 · 1738 阅读 · 0 评论 -
进程无故被kill,非OOM,是病毒
现象我的一个进程,是由crontab定时任务管理的,每天早上启动,晚上自动退出。已经在服务器上稳定运行了几个月。但是今天发现系统不太对,下游的服务不动作了,一查原因,原来的我的进程退出了。没有看到有core或者异常日志。为了先保证系统正常运行,手动启动它,结果刚运行1分钟左右,看到如下输出:[1] + 16957 killed ./a.out数次重启都被干掉了。问题如此严重,需要好好查一下子。定位OOM进程被kill掉,如果不是有进程主动为之,那就是被操作系统干掉了。原创 2021-05-13 19:38:13 · 1072 阅读 · 0 评论 -
Mysql历险记: Job for mysqld.service failed because the control process exited with error code
现象经过一个五一小长假,电脑也得到了很好的休息。开工第一天,发现Mysql挂掉了,原因是其他服务产生了大量日志,把磁盘搞满了。理论上,磁盘满了,删除点文件,把空间释放出来,再重启Mysql就好了。但这次,重启不了了,查看状态显示如下:定位解决重启了几次,查看状态时,都是报这个错误。下面看一下Mysql的日志吧:这里的信息比较详细,可以看出Mysql在几天前已经挂掉了,它把丢弃无法恢复的数据。好在它给出了解决方法:set innodb_force_recovery=1于是,修改配置原创 2021-05-08 12:16:13 · 32724 阅读 · 1 评论 -
opencv ImportError: libGL.so.1: cannot open shared object file: No such file or directory
ModuleNotFoundError: No module named ‘cv2’使用opencv测试时,发现没有安装,报错如下:安装一下吧:pip install opencv-pythonok了。但下面遇到了另一个错误。ImportError: libGL.so.1: cannot open shared object file: No such file or directory针对这个错误,网上有以下方法:yum安装:yum install libglvnd-glx-1.原创 2021-03-26 19:05:15 · 14490 阅读 · 14 评论 -
keras加载模型load_model时报错:AttributeError: ‘str‘ object has no attribute ‘decode‘ “
背景使用Keras训练了一个模型,训练好后保存为h5文件。再次加载这个模型时,报错了:AttributeError: ‘str‘ object has no attribute ‘decode‘ “:我是使用 keras_to_tensorflow.py 这个脚本的时候报的错。解决网上说了一些报这个错误的解决方法。python2和python3的编码方式不一致导致h5py包的版本不对导致第一种情况基本可以排除,因为我是用Anaconda安装的tf,python使用的是3.6,没有py原创 2021-03-26 18:58:31 · 11542 阅读 · 23 评论 -
解决已安装numpy仍然报错ModuleNotFoundError: No module named ‘numpy‘
简介目前,大多数Linux系统自带python2了。但是很多应用却需要python3。于是安装了python3。每次执行的时候,输入python时默认启动python2,输入python3才会启动python3。在pip安装了Numpy后,启动python3导致模块时,依然报错:ModuleNotFoundError: No module named ‘numpy’原因由于系统默认的是python2,所以pip直接执行时,安装的都是python2的包。安装后使用Python2是可以正原创 2021-03-16 15:22:41 · 13765 阅读 · 5 评论 -
从libc-2.27.so[7ff3735fd000+1e7000]崩溃回溯程序段错误segfault
简介最近的应用程序遇到了点问题,它总是在退出的时候段错误崩溃。段错误大家应该不陌生了,内存使用不当导致段错误。通过尝试gdb core文件,dmesg,objdump库文件等方法终于定位到了崩溃原因。这里作一记录。gdb无效时使用dmesg调试我打开了coredump配置:在运行进程的终端执行:ulimit -c unlimited,该方法只能临时打开当前终端的内核转储,详细方法请参考:内核转储-coredump简介程序崩溃时产生了core文件,但是gdb打印的情况如下:Progr原创 2020-11-16 20:49:01 · 3333 阅读 · 2 评论 -
Boost Asio异步发送数据(async_write)崩溃问题记录
背景服务端与客户端之间的网络通信(使用Boost Asio库异步编程模式实现),客户端会向服务端请求数据。在刚开始的测试中,是没有出现问题的。后来有一次测试时,服务端查询完数据后,向客户端发送时总是崩溃。通过gdb调试,可以发现是在调用到异步发送函数(boost::asio::async_write)后崩溃的。打印的栈信息如下:Program terminated with signa...原创 2020-03-03 21:21:57 · 3739 阅读 · 0 评论 -
c++ 纯虚函数被调用 错误原因
问题描述最近写程序时,做了一个基类供其他模块调用,调试时出现了下面的错误:pure virtual method called如图所示:纯虚函数被调用。纯虚函数是需要子类具体实现的函数,怎么就被调用了呢?首先明确观点:永远不要在构造和析构中直接/间接调用virtual函数。下面是根据查阅的资料和自己的理解作出的解释,供参考。抽象类和纯虚函数来复习一下c++中的纯虚函数和抽象...原创 2019-11-28 18:38:22 · 5811 阅读 · 0 评论 -
win10 vs2015编译使用openssl1_1_1d
安装步骤根据官方文档提示,按下列步骤安装:# on Windows (only pick one of the targets for configuration):$ perl Configure { VC-WIN32 | VC-WIN64A | VC-WIN64I | VC-CE }$ nmake$ nmake test$ nmake install简单吧,安装的这一路上,报...原创 2019-11-12 19:01:46 · 1431 阅读 · 1 评论 -
win10 vs2015 cmake编译使用libevent-2.1.11-stable
libeventlibevent可以简单理解为事件驱动库,它会在下列事件发生时调用回调函数:指定的事件在fd上发生定时器触发信号超时使用它可以替代事件驱动的网络服务中的事件循环。应用程序只需要调用 event_dispatch() ,然后就可以在不改动事件循环的情况下动态增删指定的事件。它支持 /dev/poll, kqueue(2), event ports, POSIX s...原创 2019-11-12 18:31:23 · 3208 阅读 · 2 评论 -
Zmq pub/sub无故连接中断解决之 —— TCP keepalive简介
概述顾名思义,TCP keepalive属性就是要保持TCP连接的活动性(可用性)。该属性主要用来检测TCP sockets的连接状态,是可用的还是已经断开。原理当建立TCP连接的时候,会关联到一些定时器,其中一些定时器用来处理keepalive事务。当该定时器到0时,发送到对端一个keepalive探测包(下称保活包),保活包没有真实的数据,并且需要对端响应ACK。由于TCP/...原创 2019-11-07 19:43:17 · 8836 阅读 · 9 评论 -
Windows应用程序无法正常启动(0xc0000013)的解决
问题不经常开发Win的程序,最近遇到了一个问题,看似很严重,实际挺简单的。记录一下,也是学习的过程。我在本地电脑上,使用vs2015开发一个应用程序,在本地运行正常。然后把编译好的Release目录拷贝到Win Server R2虚拟机上,再运行时,报:应用程序无法正常启动(0xc0000013)。请单击确定关闭应用程序。见下图。重启大法尝试,依然不行。一运行程序就出现这个没有任...原创 2019-11-05 09:42:54 · 13905 阅读 · 0 评论