摘要: 陈硕同学的"当析构函数遇到多线程 ── C++ 中线程安全的对象回调"是一篇非常优秀的文章,下面列举文章中的一些知识点和经验总结以便能细细品味、消化。 对象构造要做到线程安全,惟一的要求是在构造期间不要泄露 this 指针,即 不要在构造函数中注册任何回调 也不要在构造函数中把 this 传给跨线程的对象 即便在构造函数的最后一行也不行 之所以这样规定,是因为在构造函数执行期间对象还没有完成初始化,如果 this 被泄露 (escape) 给了其他对象(其自身创建的子对象除外),那么别的线程有可能访问这个半成品对象,这会造成难以预料的后果。 引入另外一层间接性,another layer o 阅读全文
posted @ 2011-01-19 16:25 edwardlost 阅读(1395) 评论(0) 推荐(0) 编辑