pthread
罗小城
这个作者很懒,什么都没留下…
展开
-
使用线程的几种方式(1) 流水线
流水线:每个线程反复的在数据集上执行同一种操作,并把操作结果传递给下一步骤其他线程。“数据元素”流被串行的执行。 下面例子来自《posix多线程程序设计》,流水线中的每个线程将它的输入加一,然后传递给下一个线程。当不停的输入时,程序依次从最后一个线程开始逐个往前阻塞,直到从最后一个线程读取数据,并发送ready信号,表示前一个线程可以给该线程传递数据。 当data_ready=0时,等待条件变量avail,条件avail用来通知某步要处理的数据已准备好,在准备好数据之后,data_rea原创 2015-08-30 22:37:13 · 3125 阅读 · 0 评论 -
使用线程的几种方式(2)工作组
在工作组模式中,数据由一组线程分别独立的处理。以下例子来自于《POSIX多线程编程》,显示了一个简单的工作组。使用两个参数运行程序,一个字符串和一个搜索路径,结果类似于命令“find argv[2] -name * | xargs grep argv[1]". 程序使用一个crew来管理工作组,工作组将搜素路径排队为单链表,如果该路劲是文件,则打开搜素是否包含。/* * crew.c原创 2015-08-31 17:10:41 · 642 阅读 · 0 评论 -
使用线程的几种方式(三)客户/服务器
在客户端/服务器系统中,客户请求服务器对一组数据执行某个操作,服务器独立的执行。以下示例程序从stdin读入数据,通过获取所mutex,实现有序。/* * server.c * 线程使用方式(3),客户端-服务器 示例 * gcc -g -o server -lpthread -Wall server.c */#include #include #include "error原创 2015-09-05 18:14:17 · 554 阅读 · 0 评论