language
ElisonWu
这个作者很懒,什么都没留下…
展开
-
到底是使用abstract method还是interface在实现多态时
在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的对系统设计人员来讲就不那么重要了;而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交互,在系统设计之初都是要着重考虑的,这也是系统设计的主要工作内容。面向接口编程我想就是指按照这种思想来编程吧!实际上,在日常工作中,你已经按照接口编程了,只不过如果你原创 2012-12-29 14:22:40 · 853 阅读 · 0 评论 -
Pthreads并行编程之spin lock与mutex性能对比分析
POSIX threads(简称Pthreads)是在多核平台上进行并行编程的一套常用的API。线程同步(Thread Synchronization)是并行编程中非常重要的通讯手段,其中最典型的应用就是用Pthreads提供的锁机制(lock)来对多个线程之间共 享的临界区(Critical Section)进行保护(另一种常用的同步机制是barrier)。 Pthreads提供了多种锁机转载 2013-03-07 14:07:26 · 724 阅读 · 0 评论 -
memcpy和memmove的区别
1,函数声明 void* memcpy(void* dest,void* source,unsigned count); void *memmove(void *dest, void *source, unsigned count); memcpy和memmove都是对于内存的拷贝,当他们被应用在不同的内存区域拷贝(source和dest志向不同的内存区域)时,效果是一样的,原创 2013-03-21 14:23:59 · 1105 阅读 · 1 评论 -
使用c++11重新实现producer和consumer模型
作为一名程序员,我想我们应该都写过producer和consumer的模型,应为他的用途实在是太广泛了,比如之前服务器里使用到的actor队列,还有一些对于计算量比较大的任务,都是前端快速接受请求,放到队列,然后后面的线程池取出队列执行并异步返回,都是使用的producer和consumer方式来实现的,我简单的画了一张图: 在代码层面的实现无非是用一个队列,然后再produce原创 2014-03-21 16:25:15 · 2471 阅读 · 0 评论