![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
程序设计类
百变狸猫
这个作者很懒,什么都没留下…
展开
-
如何实现多个线程写、一个线程读的队列,并且所有线程间不需要等待同步
讨论切换线程的函数:SwitchToThread(); // 切换到其他线程,即使其他线程优先级比自己低也会切换sleep(0); // 切换到其他线程,只能切换到比自己优先级高或者同等优先级的线程,不会切换到低优先级线程。首先设计一个一线程写一线程读的队列,拥有读写2个指针。读线程:1、首先判断读写指针,如果读指针==写指针,那么返回无数据,否则读取数据,然后读指原创 2013-03-26 20:49:04 · 2328 阅读 · 0 评论 -
关于typedef 在类中使用的作用域, 继承以及重载。
1、typedef也是有作用域的,作用域和函数、变量类似。比如类内定义的typedef,要在类外引用就必须在前面加上class_name:: 。并且受到private、public的影响。2、typedef也具有继承性,比如父类里面定义了typedef,子类里是可以使用的。比如:class a{public:typedef int typea;}class b : pu原创 2013-03-28 16:05:59 · 3148 阅读 · 0 评论 -
汇编代码中的ILT 、 thunk是什么意思
ILT是增量链接表,是在DEBUG下为了实现修改后马上生效而不用停止重新编译加的一个函数跳转表。每次函数调用首先跳转到ILT表中,然后查表求出最新一次动态编译生产的函数位置。ILT与【thunk】没有任何关系,thunk是为了实现类的多继承时、在类的成员函数调用前 通过插入一个thunk代码,修改this指针指向真正的对象内存地址,是虚函数实现的关键方法。原创 2013-04-19 23:04:33 · 1769 阅读 · 0 评论 -
关于 接口与对象指针对成员函数的调用时的汇编执行行为分析
测试方法:interface IA1{public:virtual void f1() = 0;virtual void f2() = 0;};interface IA2{public:virtual void f3() = 0;virtual void f4() = 0;};class CB1 : public原创 2013-04-20 13:15:24 · 632 阅读 · 0 评论