多线程中,上锁的理解

近日,因为需要开发一个功能,需要一个比较复杂的链表的结构,而且因为涉及到多线程的问题,所以在设计锁的时,犯了难。因为没有把逻辑理清楚,在很多没有竞争关系的地方都挂了锁,增加了没必要的消耗,特此总结一下:

上锁区域分析

1,确定体统中,到底有哪些线程,会对该数据结构进行操作

2,划分出他们的竞争区域

3,理出他们的对竞争区域进行操作的函数,包括哪步开始进行对对象进行了写操作。

4,再开始设计锁

posted on 2012-08-13 23:10  suriyel  阅读(265)  评论(0编辑  收藏  举报

导航