quark

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

03 2012 档案

摘要:先贴出自己写的测试代码:int* M2(int* p){ return p+1;}int M(int a, char b){ int* pp = M2(&a); return *pp;}int _tmain(int argc, _TCHAR* argv[]){ int e=0; int d = M(3,'c'); getchar(); return 0;}然后来一层一层的分析:调用函数Main008B1030 push ebp // 将ebp的值压入栈 008B1031 mov ebp,esp // 将esp的值赋值给ebp008B1033 sub ... 阅读全文
posted @ 2012-03-20 10:34 QuarkZ 阅读(6030) 评论(0) 推荐(1) 编辑

摘要:Segment类Segment成员变量 long long m_index;记录该segment的索引号。 int* volatile m_state;状态数组,标识所对应的元素节点的状态,默认值为0,如果该元素节点添加了值,则标记为1。 T* volatile m_array;队列元素存储空间的指针。 Segment* volatile m_next;指向下一个segment的指针。 volatile long m_high;标识在当前segment,元素最后添加的索引值,初始值为-1,如果该segment被填满了,则该值为SEGMENT_SIZE – 1。 volatile long m_ 阅读全文
posted @ 2012-03-19 16:40 QuarkZ 阅读(3746) 评论(1) 推荐(1) 编辑

摘要:ConcurrentQueue<T>队列是一个高效的线程安全的队列,是.Net Framework 4.0,System.Collections.Concurrent命名空间下的一个数据结构。ConcurrentQueue<T>数据结构下图是ConcurrentQueue<T>数据结构的示意图:ConcurrentQueue<T>队列由若干Segment动态构成,每个Segment是一块连续的内存Buffer,大小固定为SEGMENT_SIZE。ConcurrentQueue<T>私有成员变量ConcurrentQueue<T& 阅读全文
posted @ 2012-03-19 14:09 QuarkZ 阅读(44463) 评论(3) 推荐(3) 编辑

点击右上角即可分享
微信分享提示