![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
mingyuewrt
略了
展开
-
生产者和消费者
1.linux版本:#include<iostream>#include<queue>#include<stdlib.h>#include<pthread.h>#include<unistd.h> #define NUM 8 class BlockQueue{private: std::queue<int> q; int cap; pthread_mutex_t mutex; pthre原创 2021-01-28 15:29:16 · 88 阅读 · 0 评论 -
线程安全的单例模式(C++)
代码段1:class Lock{private: CCriticalSection m_cs;public: Lock(CCriticalSection cs) : m_cs(cs) { m_cs.Lock(); } ~Lock() { m_cs.Unlock(); }}; class Singleton{private: Singleton(); Singleton(原创 2021-01-26 14:19:24 · 176 阅读 · 0 评论 -
c++的内存管理(raii->shart_ptr->垃圾回收)
1.参考:什么情况下 C++ 需要垃圾处理机制?https://www.zhihu.com/question/308638046这个链接里,很多人的观点不同,但都值得去理解和学习。2.c++11里share_ptr的用法相关(循环引用的避免在大项目里难以保证----这个在《什么情况下 C++ 需要垃圾处理机制?》里,大家已经分析过了。但还是有用的。)参考:(1)浅谈shared_ptr及shared_ptr涉及到的循环引用问题https://blog.cs..原创 2020-12-31 20:01:42 · 362 阅读 · 0 评论 -
VC++中,频繁内存分配大约2M时,会内存分配失败
一、工作中,遇到过这种问题:Windows系统作为服务器。每次跨服或者下线,数据保存时,会保存大约2M的角色数据。最初游戏每周跨服一次,后来改为每天都可以跨服。然后,总是有玩家反映,角色数据回档。看日志发现:在2M数据的内存分配处,报错,内存分配失败。直接原因猜测:跨服相关的保存比原来多了7倍,本来较少重现的问题,成了频繁出现的问题。(跨服保存、原服保存,逻辑有何异同,没有深入看。)最后解决:用内存池,预分配20个空间。2M数据的内存分配在这个内存池里。(运行一段时间后的内存原创 2020-12-23 19:11:34 · 522 阅读 · 0 评论 -
类的静态成员函数带来了什么好处,应该在什么时候使用?
参考https://www.cnblogs.com/jack-wangchong/p/7404748.html原创 2020-12-17 19:54:31 · 377 阅读 · 0 评论 -
DLL使用方法已经重名解决
(1)一、 VS2015隐式加载Dll及常用的创建方式二、 VS2015显示加载Dll及常用的创建方式三、抽象类作为接口使用dll中实现的方法参考:https://blog.csdn.net/blade1080/category_7900925.html(2)不同DLL中有同名类或函数的问题参考:https://bbs.csdn.net/topics/80257879https://www.cnblogs.com/zhonghaijing/p/9782710.html原创 2020-12-08 11:04:17 · 381 阅读 · 0 评论 -
C++ 获取结构体内存对齐后的每个字段的大小
百度了下,很多文章只是在告诉你一些内存对齐的理论,教你怎么算每个字段实际占用的内存。例如这篇文章:http://wenku.baidu.com/link?url=n1FoivBissfKXjxVpXr36oPEGUfoImMEM1FFhpMdeMhnhg48fs5o0RxB6S2VTbErn9MDoy299TeAazp-hffxACK29sx2tmFS1ulr-TaMela这是原创 2016-06-17 12:19:38 · 456 阅读 · 0 评论 -
offsetof宏 中 神奇的 (TYPE*)0)->
看书(用c++实现类似java里的反射系统)时见到这个#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE*)0)->MEMBER)感觉很奇怪,空指针(0)怎么可以接->呢?下面这篇文章很好的解答了这个疑问。https://www.cnblogs.com/xuzhi-fpga/p/5482195.html具体内容如下:1、#define offsetof(TYPE, MEMBER) ((size_t) &...转载 2020-12-03 10:25:42 · 736 阅读 · 0 评论