前言

来源:互联网 发布:pp越狱助手 for mac 编辑:程序博客网 时间:2024/06/07 20:56

当我毕业以后我的第一份工作就遇到了多线程编程的概念,我们正在写一个必须把到来的数据记录填入数据库的数据处理的程序。有很多数据,但是每个记录都是独立的,并且需要一个合理的处理量在被插入到数据库前。为了充分利用CPU,我们使用多线程运行这个程序,每个线程处理自己的记录集,我们使用C++的POSIX线程写这个程序,但是发生了很多的错误,因为多线程对于我们来说是一个全新的动心,最后我们完成了它。也是从这个项目我才开始关注C++标准委员会和最新的C++标准。

我对多线程和并发产生了浓厚的兴趣,当其他人认为它是困难的,复杂的和问题来源,我看他却是一个可以充分利用你的硬件使你的程序跑的更快的工具。稍后我学习了怎样使用多线程去提高程序性能即使是在单核心的CPU硬件环境下,通过使用多线程隐藏像IO这样的费时的操作,我也学习了系统层的工作原理和英特尔COU的任务切换。

同时,我对C++的兴趣是我接触到了ACGU和BSI的C++标准专家,还有Boost,我一直关注着Boost线程库的发展,当最初的开发者放弃它的时候,我抓住机会参与了进来。目前我已经成为了Boost线程库最主要的开发者和维护者。

现在C++标准委员会的工作从修复现有标准的缺陷转换为制定下一个C++标准(在2009年希望被完成时称作C++0x,但是现在称作C++11,因为它到2011年发布的 ),我与BSI联系更密切了,我开始起草自己的建议书。自从多线程提上日程,我在新标准的那部分创作和合著了许多多线程和并行的建议书,我感到非常荣幸有机会用这种方式结合我主要的两部分C++和多线程。

这本书描述了我的所有关于C++和多线程的经验,教一些其他的C++开发者怎样使用C++11安全和高效的线程库。我也希望能传授一些我对此学科的热情。

我要感谢我的妻子,Kim对于我写这本书的支持和厚爱,它对于我剩余的4年时间具有很大的意义,没有她的关心支持和理解,我不可能完成它。

      接下来我想感谢使这本书成为肯呢过的队员:Marjan Bace, 出版者; Michael Stephens,联合出版社;Cynthia Kane,我的开发编辑; Karen Tegtmeyer,检查编辑;Linda Recktenwald,我的复印编辑;Katie Tennant 我的校对员;和Mary Piergies,产品管理员。没有他们的努力你现在可能读不到这本书。

我也将感谢其他撰写多线程的C++标准委员会的成员:Andrei Alexandrescu,Pete Becker, Bob Blainer, Hans Boehm, Beman Dawes, Lawrence Crowl, Peter Dimov,Jeff Garland, Kevlin Henney, Howard Hinnant, Ben Hutchings, Jan Kristofferson, Doug Lea, Paul McKenney, Nick McLaren, Clark Nelson, Bill Pugh, Raul Silvera, Herb Sutter,Detlef Vollmann, 和Michael Wong,加上所有对此书提出意见和在会议上讨论的人,还有在C++11中分享过支持多线程和并行的人。

    最后,我想感谢下面的人,他们的建议对本书有很大的提高:Dr. Jamie Allsop, Peter Dimov, Howard Hinnant, Rick Molloy,Jonathan Wakely, 和Dr. Russel Winder,特备感谢Russel 和 Jonathan对本书详细的检验,我还要感谢我的检验员:Ryan Stephens, Neil Horlock, John Taylor Jr., Ezra Jivan, Joshua Heyer, Keith S. Kim,Michele Galli, Mike Tian-Jian Jiang, David Strong, Roger Orr, Wagner Rick, Mike Buksas,
和 Bas Vodde。也同样感谢MEAP出版社的读者花费时间指出我们的错误和有争议的地方






0 0
原创粉丝点击