随笔分类 -  codeproject源码研究

摘要:一个简单C\C++内存池,网址如下:http://www.codeproject.com/Articles/27487/Why-to-use-memory-pool-and-how-to-implement-it,大体思路为:初始化时,分配几十个固定大小的内存块供程序使用,程序需要内存时,直接从内存池中取,释放内存时,内存池回收。该程序的内存分配时这样的,不管分配多大内存,只要内存池中有内存块并且内存块大小大于所需要分配的内存,就把这个内存块分配给程序使用,但是这个内存块剩下的内存就不能用了,所以这个内存池实现起来非常简单。共包含两个文件,一个头文件和一个cpp文件。 MemPool.h... 阅读全文
posted @ 2012-12-10 20:59 venow 阅读(3379) 评论(1) 推荐(0)
摘要:在我们的工作中,我们经常需要异步执行一些任务,下面介绍的这个可伸缩多线程队列,可满足我们的需求。 出自:http://www.codeproject.com/Articles/4148/Multithreaded-Job-Queue,主要有以下几个功能: 1、任务队列是多线程,许多任务可以异步进行,任务队列使用线程池来执行任务。 2、任务队列支持优先级,优先级高的任务优先执行(即使是后来添加的) 3、任务队列可以被暂停,但是用户还是可以添加任务,当任务队列被唤醒时,任务可以继续执行下去 4、在运行过程中,任务队列使用的线程池,用户可以自行增加和减少 大体框架主要... 阅读全文
posted @ 2012-12-08 11:15 venow 阅读(3745) 评论(0) 推荐(0)
摘要:今天我来看一个简单的写xml文件的一个类,该类非常简单,简单到其实就是C语言的文件操作再上上一点STL的知识,这个类没有MarkupSTL这个C++读写xml文件这么强大,但是如果我们项目中要操作xml文件,完全可以用这个替代或者在这个的基础上进行扩展。 这个xmlwriter类是用来写xml文件,并不能用来读取xml文件,是一个澳大利亚人写的,网址如下:http://www.codeproject.com/Articles/13498/XMLWriter-A-simple-reusable-class,共包含两个文件,一个头文件和一个cpp文件,在代码中我已经添加必要的注释,应该很容易... 阅读全文
posted @ 2012-11-27 20:53 venow 阅读(1716) 评论(1) 推荐(0)
摘要:最近想转到Linux下的C\C++编程,但是当前工作还是以在Window下的C++开发为主,偶尔也在Linux和Mac OS开发一些小工具,但是就是开发这些小工具让我有想转到Linux下C\C++编程的念头。但是工作还是要做的,不然没得饭吃啊,所以就只能利用下班时间及周末时间研究一下,先熟悉熟悉,由于大学木有认真的学习过C语言,一直以为C语言里有bool类型,直到工作后才知道C语言中木有这个类型,o(╯□╰)o。。。,所以就从C语言学起,我已经学过C++了,为什么还要从头来学C语言呢,我从事C++开发也就一年多一点,C++博大精深,所以我连半个C++程序员都算不上。废话少说了,为将来转到L.. 阅读全文
posted @ 2012-11-21 21:51 venow 阅读(6755) 评论(2) 推荐(0)