并发,即多个任务同时执行,广泛用于提高吞吐率(使用多个处理器完成单个运算)或提高响应能力(当程序的一部分等待响应时允许另一部分继续执行)。
我们在5.3节中已经介绍了C++标准对并发的支持,当然只是一种导览的形式,本章和前一章提供更加细致、更加系统化的介绍。
如果一项活动可能与其他活动并发执行,我们就称之为任务(task)。线程( thread)是执行任务的计算机特性的系统层面表示。一个 thread可执行一个任务。一个 thread可能与其他 thread共享地址空间。即,在单一地址空间中的所有 thread能访问相同的内存位置。并发系统程序员所面临的重要挑战之一,就是确保多 thread并发访问内存的方式是合理的。
