- 博客(6)
- 收藏
- 关注
原创 Linux线程间通信-条件变量
Linux多线程通信学习之条件变量一、条件变量的介绍二、条件变量的创建和使用三、代码实例从本篇开始对多线程通信的知识点进行整理,本篇主要介绍条件变量,有什么错误和建议请留言指教。有关前文多线程基础的整理请点此处。一、条件变量的介绍条件变量本质也是一个全局变量,它的功能是阻塞线程,直至接收到“条件成立”的信号后,被阻塞的线程才能继续执行。#include <pthreadtypes.h>typedef union{ struct __pthread_cond_s __data;
2022-01-01 17:21:48
537
原创 Linux线程间通信-信号量总结
四、信号量的创建和使用五、条件变量的创建和使用六、读写锁七、代码实例2.信号量使用实例#include <stdio.h>#include <unistd.h>#include <pthread.h>#include <semaphore.h>#define MAXNUM 2sem_t semDownload;pthread_t a_thread, b_thread, c_thread;int g_threadNum = 1;void
2021-11-15 00:40:18
1006
原创 Linux线程间通信-互斥锁总结
三、互斥锁的创建和使用从本质来说,互斥锁是一个联合体union类型的变量, 定义于/usr/include/bits/pthreadtypes.h/* Data structures for mutex handling. The structure of the attribute type is not exposed on purpose. */typedef union{ struct __pthread_mutex_s { int __lock;
2021-10-30 14:11:47
419
原创 结合源码的Linux线程基础详细整理
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2021-10-23 20:50:29
220
原创 三种方法解决git拒绝连接问题fatal: unable to access xxxx: Failed to connect to xxxx : Connection refused
git clone 拒绝连接,Connection refused 解决方法一、使用env指令查询系统代理并取消对应http代理二、使用git config指令查询代理并取消代理三、直接修改.gitconfig配置文档查询代理并取消代理git clone经常出现代理错误,报错如下:fatal: unable to access 'https://github.com/xbg/myproject.git/': Failed to connect to 127.0.0.1 port 8888: 拒绝连接
2021-05-12 09:16:50
30977
7
原创 Makefile之调用函数、嵌入shell命令时缺失空格出错
Makefile易错点整理调用ifeq函数需要注意使用shell命令判断文件夹是否存在时需要注意写Makefile的时候,经常遇到缺少空格导致的错误,不易察觉却难以一一记住,所以把一些遇到的相关错误整理一下。调用ifeq函数需要注意ifeq之后要接一个空格才能接括号 ;函数的主体语句要顶格写,不要加tab ;一个正确的示例如下ifeq ($(MAKECMDGOALS),default)include $(base_dir)/common.mkendififeq ($(MAKECMDGO
2021-04-29 09:25:11
344
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人