自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

陈硕的Blog

吾尝终日而思矣,不如须臾之所学也。吾尝跂而望矣,不如登高之博见也。……君子生非异也,善假于物也。 @bnu_chenshuo

  • 博客(2)
  • 资源 (3)
  • 收藏
  • 关注

原创 HEC虚拟机的一些改进建议

HEC虚拟机的一些改进建议 陈硕 2004-02-13 在《虚拟机的设计与实现——C/C++》一书中,作者Bill Blunden描述了一个简单但完整的虚拟机——HEC的设计及实现。在阅读第三章的过程中,我发现有几处值得改进的地方。不是针对HEC的总体设计和代码结构——那样牵一发而动全局,而是针对HEC虚拟机实现代码中某些细节做些改进。 1.        转换字节序 HEC的字节序(byte o

2004-06-21 11:24:00 8258 9

原创 第二届北师大程序设计竞赛

5月29日和5月30日这两天,北师大举行了第二届程序设计竞赛(暨 ACM 选拔赛)。我作为命题人(1 of 3)和裁判(1 of 4),参与了这次竞赛。 5月29日是热身赛,供选手熟悉比赛环境(PC2 )http://www.ecs.csus.edu/pc2/;30日上午9:30至下午2:30正式比赛,共6题,个人单独参赛,每人一台电脑,编程语言为C/C++,可查资料。 比赛过程中,评判软件没有出

2004-06-01 11:11:00 7885 7

当析构函数遇到多线程── 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关注的人

提示
确定要删除当前文章?
取消 删除