转自:http://www.cnblogs.com/alanhu/articles/4748943.html Posix线程编程指南(1) 内容: 一、 线程创建 二、线程取消 关于作者 线程创建与取消 杨沙洲(pubb@163.net) 2001 年 10 月 这是一个关于Posix线程编程的专栏 ...
分类:
系统相关 时间:
2017-09-30 00:41:06
阅读次数:
256
前言 创建线程: 退出线程: 线程的创建 使用多线程,首先就需要创建一个新线程。那么线程是如何被创建的呢,是用下面这个函数创建的。 创建函数的四个参数的意义分别如下: 返回值:如果函数执行成功,则返回 0,如果执行失败,则返回一个错误码。 错误码: 下面就是调用 pthread_create() 函 ...
分类:
编程语言 时间:
2017-09-24 02:46:22
阅读次数:
176
POSIX 多线程的 cleanup 函数 控制清理函数的函数有两个,一个是 pthread_cleanup_push(), 用来把清理函数压入栈中,另一个是 pthread_cleanup_pop(), 用来把栈中的函数弹出来。 用这两个函数组合,可以达到在线程退出时,清理线程数据的作用, 例如对 ...
分类:
编程语言 时间:
2017-09-21 23:23:51
阅读次数:
188
全局初始化互斥量和条件变量(不全局也行,但至少要对线程启动函数可见,这样才能使用。) 使用互斥量锁住一块代码方法如下(默认忽略pthread开头的函数的错误检查,即类似 int s = pthread_xxx(...); if (s != 0) { printErrorMsg(s, ...); }这 ...
分类:
编程语言 时间:
2017-08-08 16:42:31
阅读次数:
134
创建POSIX线程的函数为 第1个参数为线程句柄(类似于文件描述符),第3个参数为线程启动函数(输入void*、返回void*,因为指向任何结构体/基本数据类型的指针都可以被看作void*,而void*一般都可以显式强制转换成指向对应类型的指针甚至整型,这是不支持纯C编程的常见技巧),第4个参数为传 ...
分类:
编程语言 时间:
2017-07-30 22:09:45
阅读次数:
253
LinuxThreads 项目最初将多线程的概念引入了 Linux®,可是 LinuxThreads 并不遵守 POSIX 线程标准。虽然更新的 Native POSIX Thread Library(NPTL)库填补了一些空白,可是这仍然存在一些问题。本文为那些须要将自己的应用程序从 LinuxT ...
分类:
系统相关 时间:
2017-07-10 14:27:40
阅读次数:
265
在单线程程序中。我们常常要用到"全局变量"以实现多个函数间共享数据, 然而在多线程环境下。因为数据空间是共享的。因此全局变量也为全部线程所共同拥有。但有时应用程序设计中有必要提供线程私有的全局变量,仅在某个线程中有效,但却能够跨多个函数訪问。POSIX线程库通过维护一定的数据结构来解决问题。这个些数 ...
分类:
编程语言 时间:
2017-06-24 21:03:15
阅读次数:
179
mysql压力测试一、测试工具:sysbenchsysbench支持的测试模式:1、CPU运算性能
2、磁盘IO性能
3、调度程序性能
4、内存分配及传输速度
5、POSIX线程性能
6、数据库性能(OLTP基准测试)
目前sysbench主要支持mysql,drizzle,pgsql,oracle等几种数据库。二、编译安装sysbench下载链..
分类:
数据库 时间:
2017-06-02 17:24:50
阅读次数:
293
susbench性能测试工具:1、cpu性能2、磁盘io性能3、调度程式性能4、内存分配及传输速度5、POSIX线程性能6、数据库性能(OLTP基准测试)现在sysbench主要支持MySQL,pgsql,oracle这3种数据库centos6下面测试的安装:yuminstallhttp://dl.fedoraproject.org/pub/epel/6/x86_64/..
分类:
其他好文 时间:
2017-05-16 14:50:25
阅读次数:
157
【版权声明:尊重原创。转载请保留出处:blog.csdn.net/shallnet 或 .../gentleliu。文章仅供学习交流,请勿用于商业用途】 在第一节说到了生产者消费者问题,这一节我们来实现这样一个稍作改动的模型: 初始时缓冲区为空。生产者向缓冲区写入数据。消费者在缓冲区为空的情况下睡眠 ...
分类:
编程语言 时间:
2017-05-13 12:25:47
阅读次数:
201