【linux高级程序设计】(第十二章)Linux多线程编程 4
读写锁

书上有读者写者的代码,我实在是懒得实现一遍了。跟之前的代码差不多。
多线程异步信号处理

int pthread_kill (pthread_t __threadid, int __signo) :发送信号。第二个参数为0时表示检测指定线程是否存在。成功返回0.
int pthread_sigmask (int __how, __const __sigset_t *__restrict __newmask, __sigset_t * __restrict __oldmask) :设置调用线程的信号掩码。
参数一:表示方法,包括 SIG_BLOCK, SIG_UNBLOCK, SIG_SETMASK
书上有个例子,同样懒得抄....
线程属性控制
线程属性结构体包括


pthread_t pthread_self (void) : 获取线程ID。该ID在一个进程中唯一,但在不同的进程中可能相同。
syscall(SYS_gettid) : 获取线程的pid, 是唯一的。 不能用ps命令查看
int pthread_attr_init (pthread_attr_t *__attr) : 初始化线程属性对象
默认的属性值为:

int pthread_attr_destroy (pthread_attr_t *__attr) :销毁一个已经初始化的线程属性
获取/设置线程分离状态or可连接状态
int pthread_attr_setdetachstate (pthread_attr_t *__attr, int __detachstate) : 设置detachstate属性
PTHREAD_CREATE_DETACHED :处于分离状态
PTHREAD_CREATE_JOINABLE :可连接状态(默认)
int pthread_attr_getdetachstate (__const pthread_attr_t *__attr, int *__detachstate) : 获取detachstate属性
栈相关属性
int pthread_attr_setstacksize(pthread_attr_t *__attr, size_t __stacksize) :设置栈大小 PTHREAD_STACK_MIN表示最小值,其他数字就是具体值。
int pthread_attr_getstacksize(__const pthread_attr_t *__restrict __attr, size_t *__restrict __stacksize) :获取栈大小
int pthread_attr_setstackaddr(pthread_attr_t *__attr, void *__stackaddr) :设置栈地址
int pthread_attr_getstackaddr(__const pthread_attr_t *__restrict __attr, void **__restrict __stackaddr) :获取栈地址
int pthread_attr_setguardsize (pthread_attr_t *__attr, size_t __guardsize) :设置栈保护区大小。用于溢出保护。
int pthread_attr_getguardsize (__const pthread_attr_t *__attr, size_t *__guardsize) :获取栈保护区大小。
【linux高级程序设计】(第十二章)Linux多线程编程 4的更多相关文章
- linux高级管理第十二章--rsync
实验部分 1.安装rsync 2.配置文件 3.配置密码 4.后续 5.为了测试,创建几个文件 配置实时同步 1.调整inotify内核参数 安装inotify-tools 测试同步 编写脚本 验证 ...
- 读书笔记 - js高级程序设计 - 第十二章 DOM2和DOM3
Node类型的变化 访问元素的样式 myDiv.style.backgroundColor = "red" myDiv.style.width = "100px& ...
- 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条
http://blog.csdn.net/terryzero/article/details/3797782 疯狂JAVA讲义---第十二章:Swing编程(五)进度条和滑动条 标签: swing编程 ...
- 鸟哥的linux私房菜——第十二章学习(Shell Scripts)
第十二章 Shell Scripts 1.0).什么是shell scripts? script 是"脚本.剧本"的意思.整句话是说, shell script 是针对 shel ...
- 读书笔记 - js高级程序设计 - 第十五章 使用Canvas绘图
读书笔记 - js高级程序设计 - 第十三章 事件 canvas 具备绘图能力的2D上下文 及文本API 很多浏览器对WebGL的3D上下文支持还不够好 有时候即使浏览器支持,操作系统如果缺缺 ...
- 鸟哥的Linux私房菜——第十二章:档案的压缩与打包
视频链接: 土豆:http://www.tudou.com/programs/view/GncwT0FJKsQ B站(推荐):http://www.bilibili.com/video/av98857 ...
- 第三十二章 Linux常规练习题(一)
一.练习题一 1.超级用户(管理员用户)提示符是____,普通用户提示符是____.2.linux关机重启的命令有哪些 ?3.bash是什么?4.bash特性, 常见的bash特性有哪些?5.网卡的配 ...
- 第十二章 Linux三剑客之老三—grep
一.Linux grep 命令用于查找文件里符合条件的字符串. Linux系统中的grep命令是一种功能强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.grep全称是Global ...
- 【linux高级程序设计】(第九章)进程间通信-管道 1
Linux操作系统所支持的主要进程间的通信机制. 无名管道 PIPE cat test.txt| grep hello 上面这种管道,将一个命令的输出作为另一个命令的输入,而这种管道是临时的,命令执行 ...
- 第十二章Linux文件系统与日志
1.inode 包含文件的元信息(1)inode 内容:文件的字节数.拥有者的 UID.GID.文件的读写执行权限.时间戳等,但不包含文件名.文件名是储存在目录的目录项中.(2)查看文件的 inode ...
随机推荐
- PHP.29-TP框架商城应用实例-后台6-商品会员添加-价格、级别
首先把需求分析搞清楚 主要实现两个功能 1.会员管理,设置成为会员的要求 2.添加商品时,可设置会员优惠价格 具体实现 1.建表[会员级别限定表p39_member_level{Id,级别名称,积分下 ...
- 1,版本控制git--仓库管理
再开始这个话题之前,让我想起了一件很痛苦的事情,在我大学写毕业论文的时候,我当时的文件是这样保存的 毕业论文_初稿.doc 毕业论文_修改1.doc 毕业论文_修改2.doc 毕业论文_修改3.d ...
- poj2001Shortest Prefixes(trie)
Shortest Prefixes Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 18687 Accepted: 808 ...
- Mac下安装Angular报错处理
安装 Angular CLI 命令: sudo npm install -g @angular/cli 打印如下错误:(权限问题) gyp WARN EACCES user "root&qu ...
- echart搭配时间轴进行展示 (本例展示的是多时间 多地区 多指标条件 )
1:照常先来几张图 看效果 2:首先 看官方文档 我把echart官方的例子给扒下来并整理了得出如下效果 上 案例图和代码 效果图 : 代码: <style type="text/c ...
- dubbo-admin管理控制台的安装和使用
因为zookeeper只是一个黑框,我们无法看到是否存在了什么提供者或消费者,这时就要借助Dubbo-Admin管理平台来实时的查看,也可以通过这个平台来管理提者和消费者. dubbo下载及配置 du ...
- 底部菜单栏之Fragment的详细介绍和使用方法
详情请看:http://blog.csdn.net/loongggdroid/article/details/9366413
- Delphi中的关键字与保留字
Delphi中的关键字与保留字 分类整理 Delphi 中的“关键字”和“保留字”,方便查询 感谢原作者的收集整理! 关键字和保留字的区别在于,关键字不推荐作标示符(编译器已经内置相关函数或者留给保留 ...
- Kotlin中功能操作与集合(KAD 11)
作者:Antonio Leiva 时间:Feb 2, 2017 原文链接:https://antonioleiva.com/functional-operations-collections-kotl ...
- 使用git和intelliJ
intelliJ 官网创建账户之后Apply for a free student or teacher license for educational purposes就能免费使用专业版的intel ...