一种高效读写锁的实现方法与流程

文档序号:12463712阅读:来源:国知局

技术特征:

1.一种高效读写锁的实现方法,其步骤为:

1)程序的主线程初始化共享数据队列,为该共享数据队列设置一写线程和一读线程,以及设置一整数变量M来保存该共享数据队列最大长度,设置一变量K保存当前该共享数据队列中的数据个数;

2)当该程序需要对该共享数据队列进行写操作时,该主线程调用该共享数据队列的写线程,该写线程做写操作前,先检查K,如果K<M,则把要写的数据插入到该共享数据队列的写端,并且增加K的计数值;

3)当该程序需要对该共享数据队列进行读操作时,该主线程调用该共享数据队列的读线程,该读线程做读操作前,检查K,如果K>0,则从该共享数据队列的读端读取一个元素,并且减少K的计数值。

2.如权利要求1所述的方法,其特征在于,所述步骤2)中,如果K大于或等于M,即该共享数据队列已满,则丢弃当前要写的数据。

3.如权利要求1所述的方法,其特征在于,所述步骤2)中,如果K大于或等于M,即该共享数据队列已满,则等待该共享数据队列未满时,将当前要写的数据插入到该共享数据队列的写端,并且增加K的计数值。

4.如权利要求1所述的方法,其特征在于,所述步骤3)中,如果K=0,即该共享数据队列为空,则采取等待或者轮询的方式检测该共享数据队列中是否存在数据,如果存在,则从该共享数据队列的读端读取一个元素,并且减少K的计数值。

5.如权利要求1所述的方法,其特征在于,该共享数据队列中的元素为写入数据的指针。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1