摘要:
前不久实现的一个简单线程池:
http://www.cnblogs.com/ITAres/archive/2009/03/27/1423414.html
主是是通过记录线程的最后激活时间来判断线程是否超时。这次用WaitHandle对象来实现,感觉会合理一点。
阅读全文
摘要:
ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢,Vector由于使用了synchronized方法(线程安全)所以性能上比ArrayList要差,LinkedList使用双向链表实现存储,按序号索引数据需要进行向前或向后遍历,但是插入数据时只需要记录本项的前后项即可,所以插入数度较快! 阅读全文
摘要:
代码加注释,希望对初学者有用。
阅读全文
摘要:
对于系统的所有操作符,一般情况下,只支持基本数据类型和标准库中提供的class,对于用户自己定义的class,如果想支持基本操作,比如比较大小,判断是否相等,等等,则需要用户自己来定义关于这个操作符的具体实现。比如,判断两个人是否一样大,我们默认的规则是按照其年龄来比较,所以,在设计person 这个class的时候,我们需要考虑操作符==,而且,根据刚才的分析,比较的依据应该是age。那么为什么叫重载呢?这是因为,在编译器实现的时候,已经为我们提供了这个操作符的基本数据类型实现版本,但是现在他的操作数变成了用户定义的数据类型class,所以,需要用户自己来提供该参数版本的实现。
阅读全文
摘要:
引用是C++中的概念,初学者容易把引用和指针混淆一起。
一下程序中,n是m的一个引用(reference),m是被引用物(referent)。
int m;
int &n = m;
n相当于m的别名(绰号),对n的任何操作就是对m的操作。
所以n既不是m的拷贝,也不是指向m的指针,其实n就是m它自己。
阅读全文
摘要:
上网主要就是浏览网页,有时候网页会出现一些乱码,怎么回事?那就要了解一下网页的编码了,以下知识收集自网络。在将来不远的几年里, Unicode 将会取代 ASCII 与 Latin-1 编码的位置,成为最流行的编码了. 它不仅允许你处理处理事实上存在于地球上的任何语言文字, 而且提供了一个全面的数学与技术符号集, 因此可以简化科学信息交换.
阅读全文
摘要:
ISO Latin-1字符集 阅读全文
摘要:
缓存实现方案:
定义两个hashtable(t1,t2)。一个读一个写(读:从client接收数据。写:数据写入数据库)。每隔N秒写一次数据库。写数据库的时候最好采用异步的方式进行,以防止线程长期占用hashtable(读).
阅读全文
摘要:
MySQL 存储过程参数有三种类型:in、out、inout。它们各有什么作用和特点呢? 阅读全文