摘要: Lambda表达式是干么的?.lambda表达式首先是一个表达式,是一个函数对象一个匿名函数,但不是函数。现在流行语言例如:JS、PHP都支持一种和面向过程、面向对象并列的函数式编程,lambda就是一种函数式编程,以函数的形式出现,但是是一个表达式。C++11与时俱进,加入了lambda表达式。在 阅读全文
posted @ 2018-06-04 20:55 秋雨声 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 我们通过创建 std::thread 对象来对线程进行管理。在一些情况下,这种方式不可行,因为需要在线程的整个生命周期中对其进行管理,并根据硬件来确定线程数量,等等。另一种情况是,当使用多线程来解决某个问题时,在某个条件达成的时候,可以提前结束。 所以从管理线程和任务的机制,两个角度介绍线程池。 一 阅读全文
posted @ 2018-06-04 17:35 秋雨声 阅读(505) 评论(0) 推荐(0) 编辑
摘要: 本章主要内容 线程间划分数据的技术 影响并发代码性能的因素 性能因素是如何影响数据结构的设计 多线程代码中的异常安全 可扩展性 并行算法的实现 前面主要介绍了并发的数据结构,现在从高层(但也是基本的)考虑,如何使用线程,哪些代码应该在哪些线程上执行;以及,这将如何影响代码的清晰度,并从底层细节上了解 阅读全文
posted @ 2018-06-04 10:54 秋雨声 阅读(665) 评论(0) 推荐(0) 编辑
摘要: 主要内容: 并发数据结构设计的意义 指导如何设计 实现为并发设计的数据结构 如果一种数据结构可以被多个线程所访问,其要不就是绝对不变的(其值不会发生变化,并且不需同步),要不程序就要对数据结构进行正确的设计,以确保其能在多线程环境下能够(正确的)同步。一种选择是使用独立的互斥量,其可以锁住需要保护的 阅读全文
posted @ 2018-06-04 08:50 秋雨声 阅读(418) 评论(0) 推荐(0) 编辑