Java中ArrayList,Vector,LinkedList区别

三种结构都实现了Collection接口和List接口。而LinkedList还实现了Queue接口。
内部实现区别:
* ArrayList可以理解为一个可变长度数组,特点是内存连续,随机访问快,插入、删除慢,扩展容量时,每次增加原容量的50%;
* Vector可以理解为线程安全的ArrayList,扩展容量时,每次容量翻倍;
* LinkedList实现上为一个双向链表,随机访问慢,插入、删除快。
refrence: http://www.programcreek.com/2013/03/arraylist-vs-linkedlist-vs-vector/

MFC多核多线程编程遇到的问题总结

  1. 多线程编程必须有操作系统为基础,知道什么是互斥、临界区、事件、信号量等概念;
  2. 知道线程是CPU资源分配的基本单位;
    给线程分配CPU,可以用:SetThreadAffinityMask(tHandle,0x00000001)函数,tHandle表示线程的HANDLE(不是CWinThread*),第二个参数表示可以使用的CPU的编号,0x00000001表示只能使用第一个CPU;如果0x00000011,表示可以使用第一和第二个CPU,依此类推; Continue reading “MFC多核多线程编程遇到的问题总结”