- 博客(6)
- 收藏
- 关注
原创 unique_lock详解
unique_lock:是个类模板。内存占用可能多一点,效率差一点。unique_lock基本使用例子static int num_push = 0;static int num_pop = 0;class A { std::list<int>msgReceive; std::mutex my_mutex;//创建一个互斥量的成员变量public: void inMsg...
2018-11-26 15:17:11 1368
原创 互斥量概念,用法,死锁演示及解决详解
保护共享数据,用代码把共享数据锁住,其他想操作共享数据的线程得等待解锁。互斥量的概念:互斥量是个类对象。多个线程尝试lock锁上。结果:只有一个线程能够锁定成功,成功的标志是lock函数返回。如果没锁成功,那么流程就会卡在lock这,不断尝试去锁,一直到成功。互斥量使用起来要小心,保护数据不要多也不要少,少了程序该崩溃还是崩溃,多了影响程序的运行效率。互斥量的用法:头文件#includ...
2018-11-26 14:04:16 971
原创 创建多个线程、数据共享问题分析
Join多个线程运行顺序是乱的,跟操作系统内部对线程的调度机制有关。主线程等待子线程执行完毕后才执行void myprint(int item){ cout << "线程编号" << item << endl;}int main(){ //创建线程 vector<thread> mythread; for (int i = 0;...
2018-11-25 12:17:22 145
原创 线程传参,detach的大坑,成员函数做线程函数
传递临时对象作为参数VS shitf+F9查看变量void myprint(const int &amp;t, char *j){ cout &lt;&lt; t &lt;&lt; endl; cout &lt;&lt; j &lt;&lt; endl;}int main(){ int m=1; int &
2018-11-25 11:13:51 290
原创 并发,线程,进程
一个是实力的体现,一个是商用的必须需求。以往:windows: CreatThread(),_beginthred(),_beginthredexe()Linux: pthread_create() 创建线程临界区,互斥量。以往多线程代码不能跨平台。从C++11开始,C++语言本身增加可移植性。整个进程是否执行完毕的标志是主线程是否执行完毕。此时,如果主线程执行完毕,但是其他子线程还...
2018-11-21 12:49:22 162
原创 C++数据类型
TCHAR因为C++支持两种字符串,即常规的ANSI编码(使用"“包裹)和Unicode编码(使用L”“包裹),这样对应的就有了两套字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串。微软将这两套字符集及其操作进行了统一,通过条件编译(通过_UNICODE和UNICODE宏)控制实际使用的字符集,这样就有了_T(”")这样的字符串,对应的就有了_tcslen这样的函数为...
2018-11-02 22:33:05 155
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人