线程
跟线程相关的知识点记录
柴_笔记
软甲开发用到什么总结什么,想到什么写什么
展开
-
1.线程锁
fdsafdsafds原创 2020-08-22 19:32:58 · 194 阅读 · 1 评论 -
2.不加锁的情况
资源,什么是资源,无非就是内存空间! 意思就是:上锁了那么这个代码块中所用的内存空间就成禁止访问!假设俩个代码块都上了锁,而且内部都访问到了同一个内存空间,那么后执行的锁块就得等前一个解锁了才能开始执行!再举个例子,俩个代码块,没有访问到同一个内存空间,那么它就可以同时执行。互不影响! 不太好理解,但是假设程序执行前会先判断,比如先处理好内存分配,再执行代码块,就很好理解了。前一个代码块锁住了...原创 2020-08-22 18:16:37 · 937 阅读 · 0 评论 -
3.各加各的锁
int num=0;//定义全局变量 int main(int argc, char *argv[]) { thread_1 t1;//启动俩个线程 thread_2 t2; t1.start(); t2.start(); return a.exec(); } //线程一 void thread_1::run() { while (1) { QMutex mutex; mutex.lock(); num++; cout<.原创 2020-08-22 18:26:38 · 120 阅读 · 0 评论 -
4.加同一把锁
QMutex mut;//定义锁 int num=0;//定义全局变量 int main(int argc, char *argv[]) { thread_1 t1;//定义并启动俩个线程 thread_2 t2; t1.start(); t2.start(); return a.exec(); } 线程一 void thread_1::run() { while (1) { mut.lock();//上锁 num++; .原创 2020-08-22 18:37:53 · 249 阅读 · 0 评论