- 博客(5)
- 收藏
- 关注
原创 多线程编程整理
在多线程里,多了线程数据(TSD),这种数据在线程内部类似全局数据,所有函数都可以访问,在其它线程不可见。线程属性结构为pthread_attr_t,需要通过相关api函数设置,属性内容有:是否绑定、是否分离、堆栈大小和优先级。需要为每个线程数据创建一个键,在线程内部,代表同样的内容,在不同线程里,数据是不一样的。启动新进程的开销比新线程大很多,进程切换开销也大于线程切换;第二个参数可以设置线程属性,第四个参数设置运行函数的参数。线程间的通信比进程间通信方便,但线程间需要同步共享数据。
2023-10-18 16:12:04 62 1
原创 记录一个内存越界问题的分析和解决过程
后面发现这个多态问题后,在其它几个地方都加上断言,调试器成功的停止出错的断言处,此时有完好的堆栈信息,根据堆栈信息顺利解决问题。3,在死机时,进入memcpy的反汇编,停止指令rep movs处,对比memcpy的dst,src和size的寄存器,发现已经成功拷贝一部分数据,手工计算出原始的dst指针地址,对比2的结果,确定了出错的指针变量;1,在memcpy函数的反汇编代码打断点,但是这个工程使用到memcpy的地方太多了,像大海捞针,调试了一会放弃了;
2023-04-18 17:38:47 476 1
原创 2020-12-19
QT操作excel文档,有两种方法, 1,QAXObject + Excel VBA 需要安装了excel,然后就是各种COM对象操作,不熟悉的话还是比较复杂的。 excel = new QAxObject(); excel->setControl("ket.Application");//wps excel->setProperty("Visible", false); QAxObject *books = excel->querySubObj...
2020-12-19 15:05:29 129 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人