回忆录二2023年5月

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 回忆录二2023年5月

Open3d某些机器上无法运行

某些机器(py版本3.8.12)无法导入Open3d0.15官方版、我们的微调版,只能导入Open3d0.13官方版。当时有三个方案:一,查到不能加载的原因,并解决。二,编译支持python3.8的open3d0.15。三,在open3d0.12的基础上微调。把pybind项目所有导出内容删除,还是无法加载。把pybind项目所有源文件(.cpp)全部删除,可以导入了。估计这些类没导出,但还是链接了。恢复项目文件,每删除2到4个文件,备份一次项目文件。文件会有相互依赖的关系,只删除不依赖其它文件(类)的文件。第十四轮后,删除raycasting_scene.cpp后可以加载。进一步分析后,发现是embree3.lib引起的。删除此文件,编译的pybind.pyd可以加载,我们的程序也可以正常运行,我们的程序没使用此文件的类。

消息中转小软件

同事有个5000行的小软件,运行几小时后,就“卡死”(界面无法移动,程序还在跑),让我支援。初步讨论的结果,把一个函数从主线程移过来。问题是这个函数有800行,用了几十个成员变量,还调用了几个函数。2.5天后,终于移植完毕。测试了整整一天才上线,上线结果无大碍。幸亏花了几小时,弄了2个小工具用于模拟发送端、接收端。清点战果,移动重构了1300行代码。

消息中转小软件卡顿几秒

两三轮日志后,发现log4写不到30个字符的日志,大约0.01%几率需要800ms或更长时间,其它基本2ms,大部分都是0ms。最初方案:自己写个简单的日志类。改进一:由于是运行日志,不涉及崩溃的问题。所以,可以将日志缓存起来,开启一个线程专门写日志。显然这个日志类不需要考虑多线程。改进二:开启的新线程直接用log4net而不是自己写的类写日志。就算不考虑多线程,这个类也有很多问题要考虑,比如日志文件会变大。改进三,将日志积累起来,减少文件打开的次数,无效果。可能log4已经进行了优化。

关于QT

同事有个用到QT的软件,需要我支援,安装QT总失败。公司七八位用过QT同事都来帮忙,也未解决。后来发现是和绿盾冲突,在虚拟机上先装开发环境,再装绿盾就没问题。个人对QT无好感,C++做界面太亏了。

安装QT,我安装的版本是5.14.2。

安装VS2017。

通过VS扩展安装QT插件。

配置QT版本,如果修改了版本名称,需要修改项目属性。

工具选项的Version必须和项目属性的QT Installation相同,Path是QT的VS子安装包(默认不安装)的目录。

QT的信号槽似乎与dump文件冲突

我刚给绿胶大软件,增加dump文件。

发现在测试平台的机器上生成的dump文件,无法调试。本机测试产生的dump文件,可以调试。

怀疑QT的信号槽和dump文件冲突。

一, 测试平台某个界面的按钮响应事件崩溃产生的dump文件,无法调试。

二, 测试平台 MainWindow::OnInitialUpdate() 和 main函数产生的dump可以调试。

qt 对后勤的压力太大了,c++不好招,去做界面太浪费了。


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
4月前
|
弹性计算 运维 自然语言处理
古希腊掌管Linux运维の神
阿里云的OS Copilot是专为Alibaba Cloud Linux 3设计的智能助手,提供命令行自然语言问答、辅助命令执行、阿里云CLI调用和系统运维调优等功能,简化Linux操作,尤其适合新手用户。要体验OS Copilot,用户需在x86平台的Alibaba Cloud Linux 3上使用,可通过ECS、KVM或Docker。免费试用ECS、学生优惠及老用户套餐可从阿里云官网获取。安装OS Copilot后,配置AK并使用`co`或`copilot`命令即可开始使用。该助手目前在与阿里云生态集成方面仍有提升空间。
每天刷题五道RHCSA/6-10题(Radhat8.2)
每天刷题五道RHCSA/6-10题(Radhat8.2)
73 0
|
运维 安全 Linux
|
存储 Kubernetes 监控
金鱼哥RHCA回忆录:DO280安装和配置Metric系统
第八章 安装和配置Metric系统
264 0
 金鱼哥RHCA回忆录:DO280安装和配置Metric系统
|
机器学习/深度学习 运维 安全
|
运维 Kubernetes 架构师
|
运维 Kubernetes 负载均衡
金鱼哥RHCA回忆录:DO280OpenShift网络--平台网络实现
第三章 OpenShift网络--平台网络实现
230 0
金鱼哥RHCA回忆录:DO280OpenShift网络--平台网络实现
|
存储 运维 Linux
金鱼哥RHCA回忆录:DO280OpenShift安装与部署--安装前准备
第二章 OpenShift安装与部署--安装前准备
210 0
金鱼哥RHCA回忆录:DO280OpenShift安装与部署--安装前准备
|
运维 监控 架构师
金鱼哥RHCA回忆录:CL210介绍
金鱼哥RHCA回忆录:CL210介绍
536 0
金鱼哥RHCA回忆录:CL210介绍