摘要: 多线程同步方法现在流行的进程线程同步互斥的控制机制,其实是由最原始最基本的4种方法实现的:1临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。 2互斥量:为协调共同对一个共享资源的单独访问而设计的。 3信号量:为控制一个具有有限数量用户资源而设计。 4事件:用来通... 阅读全文
posted @ 2014-09-06 09:41 流水~妖刀 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 使线程同步 临界区 管理事件内核对象 信号量内核对象 互斥内核对象 小结 正文 使线程同步 在程序中使用多线程时,一般很少有多个线程能在其生命期内进行完全独立的操作。更多的情况是一些线程进行某些处理操作,而其他的线程必须对其处理结果进行了解。正常情况下对这种处理结果的了解应当在其处理... 阅读全文
posted @ 2014-09-06 09:40 流水~妖刀 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 过map吧?map提供一个很常用的功能,那就是提供key-value的存储和查找功能。例如,我要记录一个人名和相应的存储,而且随时增加,要快速查找和修改:岳不群-华山派掌门人,人称君子剑张三丰-武当掌门人,太极拳创始人东方不败-第一高手,葵花宝典...这些信息如果保存下来并不复杂,但是找起来比较麻烦... 阅读全文
posted @ 2014-09-06 09:39 流水~妖刀 阅读(2975) 评论(0) 推荐(0) 编辑
摘要: 智能指针(smart pointer)是存储指向动态分配(堆)对象指针的类,用于生存期控制,能够确保自动正确的销毁动态分配的对象,防止内存泄露。它的一种通用实现技术是使用引用计数(reference count)。智能指针类将一个计数器与类指向的对象相关联,引用计数跟踪该类有多少个对象共享同一指针。... 阅读全文
posted @ 2014-09-06 09:37 流水~妖刀 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 一、简介由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete。程序员忘记 delete,流程太复杂,最终导致没有 delete,异常导致程序过早退出,没有执行 delete 的情况并不罕见。用智能指针便可以有效缓解这类问题,本文主要讲解参见的智能指针的用法。包... 阅读全文
posted @ 2014-09-06 09:30 流水~妖刀 阅读(135) 评论(0) 推荐(0) 编辑