编程语言
felixs
浏览器开发移植优化 技术邮箱:talking1239gmail.com
展开
-
C++中虚函数工作原理和(虚)继承类的内存占用大小计算
一、虚函数的工作原理 虚函数的实现要求对象携带额外的信息,这些信息用于在运行时确定该对象应该调用哪一个虚函数。典型情况下,这一信息具有一种被称为 vptr(virtual table pointer,虚函数表指针)的指针的形式。vptr 指向一个被称为 vtbl(virtual table,虚函数表)的函数指针数组,每一个包含虚函数的类都关联到 vtbl。当一个对象调用了虚函数,实际转载 2013-06-09 22:18:57 · 645 阅读 · 0 评论 -
多线程的条件变量
pthread_cond_wait()与pthread_cond_signal() 分类: 毕设相关DLM 2012-04-24 17:28 472人阅读 评论(0)收藏 举报 signalnull pthread_cond_wait()用法: ptread_mutex_lock(&mut); pthread_cond_wait(&cond, &mut); pthread_m转载 2013-06-14 23:14:56 · 636 阅读 · 0 评论 -
环形缓冲区的实现原理(ring buffer)
估计很多项目多基于效率的原因需要实现自己的RingBuffer. 在通信程序中,经常使用环形缓冲区作为数据结构来存放通信中发送和接收的数据。环形缓存区是一个先进先出的循环缓冲区,可以向通信程序提供对缓冲区的互斥访问。 1、环形缓冲区的实现原理 环形缓冲区通常有一个读指针和一个写指针。读指针指向环形缓冲区中可读的数据,写指针指向环形缓冲区中可写的缓冲区。通过移动读指针和写指针就可以实现缓冲转载 2013-06-15 11:16:30 · 2231 阅读 · 1 评论 -
[WebKit]C++类的数据结构及在反汇编上的应用
参考: 1. http://c2.com/cgi/wiki?PlainOldData 2. http://c2.com/cgi/wiki?VeeTable:vtable POD:内置数据类型并且包含trivial constructor的类 VTable:一个执行函数的数组指针,其成员函数的layout与实现方式有关 trivial constructor:使用了默转载 2013-06-19 17:30:45 · 1615 阅读 · 0 评论