删除文章

确定要删除这篇文章吗?

取消
确定

linux C++进程CPU占用100%排查

现象 使用top -c命令查看发现某个进程的CPU一直100%以上,第一反应就是查看日志,如果发现某一处频繁打印日志,那么恭喜你很容易就定位到问题所在了,如果查看日志发现没什么异常请继续往下看。 出现问题的线程 进程ID你应该已经知道了,下一步要找到出现问题的线程ID,...
1个月前
阅读(129)

linux C++内存优化

在linux上你会发现明明我的内存都释放了但是进程占用的内存还是没降下来,而在windows上就没有这种情况。这涉及到linux上内存分配原理([参考](http://blog.sina.com.cn/s/blog_b4ef897e0102vg0l.html))。 在linux系统下,一块内存被C的free函数或者C++的delete函数显式释...
1个月前
阅读(76)

C++ 智能指针简单实现

此实现仅做学习之用,生产中不要使用,可以使用std::shared_ptr和boost::shared_ptr。 代码很少相信大家都看得懂。 template<class T> class SmartPtr { struct Counter { Counter() : count(1){} int count; }; public: Smart...
2个月前
阅读(124)

C++ 的门门道道 | 技术头条

C++是一门被广泛使用的系统级编程语言,更是高性能后端标准开发语言;C++虽功能强大,灵活巧妙,但却属于易学难精的专家型语言,不仅新手难以驾驭,就是老司机也容易掉进各种陷阱。 本文结合作者的工作经验和学习心得,对C++语言的一些高级特性,做了简单介绍;对一些常见的误解...
5个月前
阅读(219)

boost asio获取本机IP地址

直接上代码,这里只获取IPV4的地址,多个IP之间用分号间隔 std::string getLocalIpAddress() { using boost::asio::ip::tcp; std::string result; try { boost::asio::io_service io_service; tcp::resolver resolver(io_service)...
6个月前
阅读(475)

C++保证指针对象正确的销毁

我们知道new一个对象要自己去delete,这样的代码写多了很容易漏掉,常见漏掉的情况如下: 忘了写 写了,但是某个分支提前return了 逻辑中抛出异常,直接跳过正常逻辑 假设有这样一个简单的类: class ConnTest { public: ConnTest() { std::cout << "ConnTe...
6个月前
阅读(253)

qpid C++接口简单封装

qpid C++接口简单封装 希望简单的封装能满足大部分场景,并且简单易用。 处理队列请求 如果我想处理某个队列的消息我只需要指定一个队列名和回调处理函数就可以了 server.AddQueueServer("pingpong", [](const Message &msg, Message &reply) { std::cout...
6个月前
阅读(266)

Apache Ignite c++ linux 编译安装

Apache Ignite c++ linux 编译安装 不要直接拉github上的代码编译,它上面没有libs库编译成功后运行不起来。 到官网上去下载:https://ignite.apache.org/download.cgibinaries 环境 操作系统:centos6 ignite版本: http://mirrors.shu.edu.cn/apache//ignite/2...
6个月前
阅读(354)

QSortFilterProxyModel排序不正确

QSortFilterProxyModel排序不正确 客户端遇到的问题是当频繁的更新model时发现table上的行排序不正确,默认使用的是setDynamicSortFilter为true的方式。 在排除排序逻辑没有问题的情况下,能想到的方法是在model changed之后手动调用一下sort方法再重新排一下,但是这...
6个月前
阅读(260)

Qt什么时候用activateWindow

Qt什么时候用activateWindow 通常我们使用show来显示窗口,使用raise将窗口显示在最前面。 遇到的问题是,当在主窗口中打开一个子窗口时,如果这个窗口之前已经创建好了,它只是不在最前面被遮挡了,这时候要把它显示在前面使用show和raise是可以的。但是会带来一个问题,...
7个月前
阅读(487)

解决多线程处理相同产品造成的数据错乱问题

目前场景是大概有十几万产品,每个产品用一个ID号表示,它有很多个属性,收到消息后主要是对产品进行增、删、改操作。 服务端有多个线程,收到一个消息后就分配一个线程去处理,问题是当某个产品ID同时被多个线程操作的时候中间会出现数据错乱的问题。由于是老系统处理一个消息时...
8个月前
阅读(279)

C++保证函数能在超时时间内返回

使用这两个接口就可以了 功能:保证某个操作能在超时时间内返回 说明:shared_from_this保证在退出作用域的时候智能指针不被释放,在线程退出的时候再自动销毁。 每执行一次execTimeout都会启动一个新线程,在线程退出后自动回收所有资源,注意T类型需要能...
8个月前
阅读(325)

C/C++ 跨平台获取当前进程内存

The "Resident set size" ("Working set size" on Windows) is the amount of physical memory (RAM) used by a process's code and data. Monitoring size changes is an important way to find memory leaks and improve performance, but methods to get this data d...
9个月前
阅读(310)

STL容器循环erase迭代器失效

STL容器循环erase迭代器失效 下面以std::map作为例子其他容器类似,给出两种写法一种C++11的一种C++03的 // 初始化 std::map<int, int> mp; for (int i = 0; i < 10; i++) { mp[i + 1] = i + 1; } // 删除value为偶数的 ...
10个月前
阅读(328)

qpid笔记

查看所有队列包括消息的信息 qpid-stat -q 查看指定队列信息 qpid-stat -q grep pingpong 查看连接信息,连接数、时间、消息数等 qpid-stat -b 删除指定队列 qpid-config del queue pingpong 如果队列不为空删除会失败,但是可以强制...
10个月前
阅读(525)

qpid-cpp Windows编译

qpid-cpp Windows编译 > 先要安装boost,cmake,python2.7,ruby 下载qpid-cpp源码 http://mirrors.hust.edu.cn/apache/qpid/cpp/1.39.0/qpid-cpp-1.39.0.tar.gz 解压之后打开CMake(cmake-gui)工具 Browse Source选择:F:/qpid-cpp-1.39.0 Browse Build...
10个月前
阅读(333)

Qt 客户端应用程序多开要注意的问题

Qt 客户端应用程序多开要注意的问题 很多客户端程序同一台电脑只允许开启一个进程,这个是很有必要的。那将一个原本单开的程序改为允许多开要注意些什么呢? 本地配置 如果多个进程读写同一个配置会造成混乱(只读的配置除外),所以要控制同一个目录不允许开两个。 ...
1年前
阅读(488)

bug修复,浮点型计算

bug修复,浮点型计算 注意: 遇到浮点型计算、转型的时候一定要小心!!! 遇到浮点型计算、转型的时候一定要小心!!! 遇到浮点型计算、转型的时候一定要小心!!! 请看一下代码: double a = 5000.11; int b = a 100; double c = a 100; b和c它们的值是...
1年前
阅读(417)

Qt connect函数参数Qt::ConnectionType的使用场景

Qt connect函数参数Qt::ConnectionType的使用场景 信号槽作为Qt中的核心特性对于每一个使用Qt框架的人来说一定要掌握,connect函数是用来连接信号和槽的,虽然这个函数有多个重载的方式,但是这里仅介绍Qt::ConnectionType这个参数的含义以及使用场景。 Qt::Connectio...
1年前
阅读(577)

比较QKeyEvent和shortcut的按键信息

QKeyEvent来自于键盘的按键事件,shortcut是快捷方式,这里我用setShortcut函数给button设置了一个快捷方式,现在我想比较QKeyEvent的按键与button的shortcut是否相同。 QKeyEvent主要是通过modifiers和key这两个函数来获取当前的按键,shortcut使用QKeySequence来表示按键...
1年前
阅读(704)
 
Keep it simple,stupid
文章数
300
总访问量
444648
今日访问
985
最近评论

xuehaoyun : 很不错,来围观一下
tujiaw : 抱歉csdn code服务关闭了,这个代码我也找不到了
于淞 : 你好,这个文章的源码能分享一下吗,songsong9181@163.com,谢谢了 上面的写错了
于淞 : 你好,这个文章的源码能分享一下吗,838106303@163.com,谢谢了 上面的链接不能用了
tujiaw : 多谢多谢
essaypinglun college-paper.org : 很好的博客,赞赞
Folly : 这个实现有点奇怪,Qt为什么没有统一的比对方法。
过多s : alert("hello, world!")
tujiaw : 还不错哦
回到顶部