摘要:
如何利用Gson处理 json 字符串 阅读全文
阅读排行榜
C++11 并发指南四(<future> 详解一 std::promise 介绍)
2013-08-24 12:20 by Haippy, 89339 阅读, 收藏,
摘要:
前面两讲《C++11 并发指南二(std::thread 详解)》,《C++11 并发指南三(std::mutex 详解)》分别介绍了 std::thread 和 std::mutex,相信读者对 C++11 中的多线程编程有了一个最基本的认识,本文将介绍 C++11 标准中 头文件里面的类和相关函数。 阅读全文
C++11 并发指南四(<future> 详解三 std::future & std::shared_future)
2013-08-27 10:55 by Haippy, 86737 阅读, 收藏,
摘要:
上一讲《C++11 并发指南四(future 详解二 std::packaged_task 介绍)》主要介绍了 future 头文件中的 std::packaged_task 类,本文主要介绍 std::future,std::shared_future 以及 std::future_error,另外还会介绍 future 头文件中的 std::async,std::future_category 函数以及相关枚举类型。 阅读全文
C++11 并发指南三(Lock 详解)
2013-10-02 11:38 by Haippy, 81637 阅读, 收藏,
摘要:
在 《C++11 并发指南三(std::mutex 详解)》一文中我们主要介绍了 C++11 标准中的互斥量(Mutex),并简单介绍了一下两种锁类型。本节将详细介绍一下 C++11 标准的的锁类型。 阅读全文
Zookeeper 初体验之——JAVA实例
2012-07-20 18:09 by Haippy, 67990 阅读, 收藏,
摘要:
Apache Zookeeper 是由 Apache Hadoop 的 Zookeeper 子项目发展而来,现在已经成为了 Apache 的顶级项目。Zookeeper 为分布式系统提供了高效可靠且易于使用的协同服务,它可以为分布式应用提供相当多的服务,诸如统一命名服务,配置管理,状态同步和组服务等。 Zookeeper 接口简单,开发人员不必过多地纠结在分布式系统编程难于处理的同步和一致性问题上,你可以使用 Zookeeper 提供的现成(off-the-shelf)服务来实现分布式系统的配置管理,组管理,Leader 选举等功能。 阅读全文
布隆过滤器(Bloom Filter)详解
2012-07-13 18:35 by Haippy, 58884 阅读, 收藏,
摘要:
布隆过滤器(Bloom Filter)是由布隆(Burton Howard Bloom)在1970年提出的。它实际上是由一个很长的二进制向量和一系列随机映射函数组成,布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率(假正例False positives,即Bloom Filter报告某一元素存在于某集合中,但是实际上该元素并不在集合中)和删除困难,但是没有识别错误的情形(即假反例False negatives,如果某个元素确实没有在该集合中,那么Bloom Filter 是不会报告该元素存在于集合中的)。 阅读全文
C++11 并发指南九(综合运用: C++11 多线程下生产者消费者模型详解)
2013-08-11 23:17 by Haippy, 56584 阅读, 收藏,
摘要:
前面八章介绍了 C++11 并发编程的基础(抱歉哈,第四章-第八章还在草稿中),本文将综合运用 C++11 中的新的基础设施(主要是多线程、锁、条件变量)来阐述一个经典问题——生产者消费者模型,并给出完整的解决方案。
生产者消费者问题是多线程并发中一个非常经典的问题,相信学过操作系统课程的同学都清楚这个问题的根源。本文将就四种情况分析并介绍生产者和消费者问题,它们分别是:单生产者-单消费者模型,单生产者-多消费者模型,多生产者-单消费者模型,多生产者-多消费者模型,我会给出四种情况下的 C++11 并发解决方案,如果文中出现了错误或者你对代码有异议,欢迎交流 ;-)。 阅读全文
C++11 并发指南四(<future> 详解二 std::packaged_task 介绍)
2013-08-24 22:20 by Haippy, 50617 阅读, 收藏,
摘要:
上一讲《C++ 并发指南四(std::future 详解一)》主要介绍了 头文件中的 std::promise 类,本文主要介绍 std::packaged_task。 阅读全文
libuv 中文编程指南(二)libuv 基础
2013-03-17 21:57 by Haippy, 50406 阅读, 收藏,
摘要:
libuv 采用了 异步 (asynchronous), 事件驱动 (event-driven)的编程风格, 其主要任务是为开人员提供了一套事件循环和基于I/O(或其他活动)通知的回调函数, libuv 提供了一套核心的工具集, 例如定时器, 非阻塞网络编程的支持, 异步访问文件系统, 子进程以及其他功能. 阅读全文
C++11 并发指南六(atomic 类型详解一 atomic_flag 介绍)
2013-09-03 22:16 by Haippy, 49982 阅读, 收藏,
摘要:
C++11 并发指南已经写了 5 章,前五章重点介绍了多线程编程方面的内容,但大部分内容只涉及多线程、互斥量、条件变量和异步编程相关的 API,C++11 程序员完全可以不必知道这些 API 在底层是如何实现的,只需要清楚 C++11 多线程和异步编程相关 API 的语义,然后熟加练习即可应付大部分多线程编码需求。但是在很多极端的场合下为了性能和效率,我们需要开发一些 lock-free 的算法和数据结构,前面几章的内容可能就派不上用场了,因此从本文开始介绍 C++11 标准中 头文件里面的类和相关函数。 阅读全文
浙公网安备 33010602011771号