名词解释
coderlang
34+ 程序员,CTO,全栈工程师,搬砖 11 年,薪资翻20倍
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
wait morphing
解锁互斥量mutex和发出唤醒信号condition_signal是两个单独的操作,那么就存在一个顺序的问题。谁先随后可能会产生不同的结果。如下: (1) 按照 unlock(mutex); condition_signal()顺序, 当等待的线程被唤醒时,因为mutex已经解锁,因此被唤醒的线程很容易就锁住了mutex然后从conditon_wait()中返回了。 (2) 按照 cond原创 2014-02-19 14:57:57 · 1599 阅读 · 0 评论 -
Spurious wakeup
Spurious wakeup现象是在条件变量使用中出现的,即一个线程可能即使没有条件变量signal的时候也会被唤醒(a thread might be awoken from its waiting state even though no thread signaled the condition variable.)这样会导致wait线程误以为条件成立,因此,正确做法是通过while判原创 2014-02-19 14:46:14 · 1657 阅读 · 0 评论 -
shallow copy and deep copy
shallow copy and deep copy(浅拷贝与深拷贝)C++03性能上长期被诟病的原因有一点就是其耗时且不必要的深度拷贝。简单的理解就是浅拷贝就是拷贝指针,深拷贝就是重新分配内存拷贝数据The default copy constructor and default assignment operators do shallow copies, which原创 2014-03-10 13:36:55 · 1178 阅读 · 0 评论
分享