2013年5月7日

posix多线程有感--线程高级编程(线程属性函数总结)

摘要: pthread_attr_t 的缺省属性值 属性 值 结果 scope PTHREAD_SCOPE_PROCESS 新线程与进程中的其他线程发生竞争。 detachstate PTHREAD_CREATE_JOINABLE 线程退出后,保留完成状态和线程... 阅读全文

posted @ 2013-05-07 23:34 胡永光 阅读(201) 评论(0) 推荐(0) 编辑

posix多线程有感--线程高级编程(线程属性pthread_attr_t)---实时调度(代码)

摘要: /* * sched_attr.c * * Demonstrate use of POSIX 1003.1c-1995 thread priority * scheduling attributes, by creating an attributes object with * realtime... 阅读全文

posted @ 2013-05-07 17:20 胡永光 阅读(190) 评论(0) 推荐(0) 编辑

posix多线程有感--线程高级编程(线程属性pthread_attr_t)---实时调度

摘要: 一、系统支持的线程优先级的最大和最小值名称::sched_get_priority_maxsched_get_priority_min功能:获得系统支持的线程优先权的最大和最小值头文件:#include函数原形:int sched_get_priority_max(int policy);int ... 阅读全文

posted @ 2013-05-07 17:17 胡永光 阅读(339) 评论(0) 推荐(0) 编辑

posix多线程有感--线程高级编程(线程属性pthread_attr_t)

摘要: 1.线程属性 线程具有属性,用pthread_attr_t表示,在对该结构进行处理之前必须进行初始化,在使用后需要对其去除初始化。我们用pthread_attr_init函数对其初始化,用pthread_attr_destroy对其去除初始化。名称::pthread_attr_init... 阅读全文

posted @ 2013-05-07 16:25 胡永光 阅读(192) 评论(0) 推荐(0) 编辑

posix多线程有感--线程高级编程(pthread_key_t)

摘要: 下面说一下线程中特有的线程存储,Thread Specific Data 。线程存储有什么用了?他是什么意思了?大家都知道,在多线程程序中,所有线程共享程序中的变量。现在有一全局变量,所有线程都可以使用它,改变它的值。而如果每个线程希望能单独拥有它,那么就需要使用线程存储了。表面上看... 阅读全文

posted @ 2013-05-07 15:06 胡永光 阅读(153) 评论(0) 推荐(0) 编辑

posix多线程有感--线程高级编程(pthread_once)

摘要: 有时候我们需要对一些posix变量只进行一次初始化,如线程键(我下面会讲到)。如果我们进行多次初始化程序就会出现错误。 在传统的顺序编程中,一次性初始化经常通过使用布尔变量来管理。控制变量被静态初始化为0,而任何依赖于初始化的代码都能测试该变量。如果变量值仍然为0,则它能实行初始化,... 阅读全文

posted @ 2013-05-07 11:33 胡永光 阅读(143) 评论(0) 推荐(0) 编辑

内存屏障(经典)

摘要: 转载:http://www.spongeliu.com/clanguage/memorybarrier/ 当你看到“内存屏障”四个字的时候,你的第一反应是什么?寄存器里取出了错误的值?ifence,sfence之类的指令?还是诸如volatile之类的关键字?好吧,我第一次看到这四个字的时... 阅读全文

posted @ 2013-05-07 10:08 胡永光 阅读(148) 评论(0) 推荐(0) 编辑

C/C++ -- 编程中的内存屏障(Memory Barriers) (2)

摘要: 在前面的文章里,主要介绍了一下内存屏障的基本认识,和基本原理。本文针对之前的思路继续聊一聊该如何处理相应的问题,以及一些多线程程序编程的技巧。 1. Volatile关键字 2. Linux pthread线程锁 3. Linux gcc 4.2之... 阅读全文

posted @ 2013-05-07 09:47 胡永光 阅读(360) 评论(0) 推荐(0) 编辑

C/C++ -- 编程中的内存屏障(Memory Barriers) (1)

摘要: 明天就要transfor去做检索引擎了,今天闲下来了,更新一下博客哈。之前 @高V 同学对本人之前《代码技巧及优化(c/c++)》的文章第六条,有关cache命中和cpu流水优化比较感兴趣,也提出了一些他的看法,今天,我就细化的说一下某些编程的点 -- 内存屏障,以及内存屏障对代码的影响。 ... 阅读全文

posted @ 2013-05-07 09:45 胡永光 阅读(298) 评论(0) 推荐(0) 编辑

优化屏障和内存屏障

摘要: 优化屏障和内存屏障 优化屏障 编译器编译源代码时,会将源代码进行优化,将源代码的指令进行重排序,以适合于CPU的并行执行。然而,内核同步必须避免指令重新排序,优化屏障(Optimization barrier)避免编译器的重排序优化操作,保证编译程序时在优化屏障之前的指令不会在优化屏障之... 阅读全文

posted @ 2013-05-07 09:29 胡永光 阅读(162) 评论(0) 推荐(0) 编辑

导航