- 博客(1)
- 资源 (3)
- 收藏
- 关注
原创 用 LaTeX 排版编程技术书籍的一些个人经验
用 LaTeX 排版编程技术书籍的一些个人经验陈硕多年之前我写过一篇书评《〈Word 排版艺术〉读后感——兼谈与 LATEX 的比较》,其中写道“如果将来有时间,我把自己用 LATEX 排书的经验总结一下,让读者在阅读《Word排版艺术》的基础上,更容易地把知识应用到 LATEX 排版中去。” 我自己排版了 《Linux 线程服务端编程:使用 muduo C++ 网络库》,现在终于可以把账还上了。
2013-02-04 03:55:14 54610 2
当析构函数遇到多线程── C++ 中线程安全的对象回调 PDF
编写线程安全的类不是难事,用同步原语保护内部状态即可。但是对象的生与死不能由对象自身拥有的互斥器来保护。如何保证即将析构对象 x 的时候,不会有另一个线程正在调用 x 的成员函数?或者说,如何保证在执行 x 的成员函数期间,对象 x 不会在另一个线程被析构?如何避免这种竞态条件是 C++ 多线程编程面临的基本问题,可以借助 boost 的 shared_ptr 和 weak_ptr 完美解决。这也是实现线程安全的 Observer 模式的必备技术。
本文源自陈硕在 2009 年 12 月上海 C++ 技术大会的一场演讲《当析构函数遇到多线程》,内容略有增删。原始 PPT 可从 http://download.csdn.net/source/1982430 下载。
本文读者应具有 C++ 多线程编程经验,熟悉互斥器、竞态条件等概念,了解智能指针,知道 Observer 设计模式。
2010-01-23
《当析构函数遇到多线程》PPT
这是陈硕在 2009 年上海 C++ 技术大会演讲《当析构函数遇到多线程》的 PPT 投影片,可自由用于个人学习,其他使用需得到作者许可。
简介:编写线程安全的类不是难事,用同步原语保护内部状态即可。但是对象的生与死不能由对象自身拥有的互斥器来保护。如何保证即将析构对象 x 的时候,不会有另一个线程正在调用 x 的成员函数?或者说,如何保证在执行 x 的成员函数期间,对象 x 不会在另一个线程被析构?如何避免这种 race condition 是 C++ 多线程编程面临的基本问题,可以借助 tr1 中的 shared_ptr 和 weak_ptr 完美解决。这也是实现线程安全的 Observer 模式的必备技术。
2010-01-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人