摘要: 因为是学习篇,写下是为了个人的学习与理解。故参考其他文章为多。 为什么会有死锁? 想象一下这样的情况,thread A 在run的时候需要等待thread B的结果,也就是threadprocA中添加tB.join(), 在thread B的threadProcB中添加tA.join()。结果就是线 阅读全文
posted @ 2020-12-17 15:06 strive-sun 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 因为是学习篇,写下是为了个人的学习与理解。故参考其他文章为多。 为什么需要线程同步? 在程序中使用多线程时,一般很少有多个线程能在其生命期内进行完全独立的操作。更多的情况是一些线程进行某些处理操作,而其他的线程必须对其处理结果进行了解。正常情况下对这种处理结果的了解应当在其处理任务完成后进行。 如果 阅读全文
posted @ 2020-12-17 14:52 strive-sun 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 对32位Windows来说,其虚拟地址空间总数就是2的32次方,即4GB。 如果没有在引导时加上/3GB或/BOOTVA选项,Windows默认最大会分2GB给内核模式程序使用,2GB给用户模式程序。 其实32位Windows不管系统物理内存有多少,它只会映射这4GB的虚拟地址空间。 也就是说,你不 阅读全文
posted @ 2020-12-17 11:23 strive-sun 阅读(594) 评论(0) 推荐(0) 编辑
摘要: this指针是存在与类的成员函数中,指向被调用函数所在的类实例的地址。 根据以下程序来说明this指针, #include<iostream.h> class Point { int x, y; public: Point(int a, int b) { x=a; y=b;} void MovePo 阅读全文
posted @ 2020-12-17 11:21 strive-sun 阅读(114) 评论(0) 推荐(0) 编辑
摘要: BITMAPINFOHEADER文档详细介绍了所需要的步骤, 对于未压缩的RGB格式,最小跨度始终是图像宽度(以字节为单位),四舍五入到最接近的DWORD。可以使用以下公式来计算步幅: stride = ((((biWidth * biBitCount) + 31) & ~31) >> 3) 要计算 阅读全文
posted @ 2020-12-17 11:15 strive-sun 阅读(615) 评论(0) 推荐(0) 编辑