CN103729253B - 一种独占资源使用方法及装置 - Google Patents
一种独占资源使用方法及装置 Download PDFInfo
- Publication number
- CN103729253B CN103729253B CN201310750997.8A CN201310750997A CN103729253B CN 103729253 B CN103729253 B CN 103729253B CN 201310750997 A CN201310750997 A CN 201310750997A CN 103729253 B CN103729253 B CN 103729253B
- Authority
- CN
- China
- Prior art keywords
- resource
- request
- state
- waiting list
- initiator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
本发明公开了一种独占资源使用方法及装置,属于计算机领域。所述方法包括:获取资源使用请求,所述资源使用请求用于资源使用请求的发起方请求使用资源库中的资源;判断所述资源的状态是否为使用状态;若所述资源的状态为使用状态,则将所述资源使用请求列入等待队列;若所述资源的状态为未使用状态,则从资源库中取出所述资源,并由所述资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态;所述资源使用请求的发起方使用所述资源结束后,将所述资源的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的资源使用请求。本发明通过所述独占资源使用方法及装置,提高了独占资源使用效率。
Description
技术领域
本发明涉及计算机领域,特别涉及一种独占资源使用方法及装置。
背景技术
独占资源,如文件,串口,打印机等资源,一次仅能由一个请求使用。现有技术响应单线程的请求,但是现代计算机系统软件一般包含多线程并发处理机制,对独占资源存在并发请求,这就会引发资源使用异常。
发明内容
本发明实施例提供了一种独占资源使用方法及装置,提高了独占资源的使用效率。
一方面,本发明实施例提供了一种独占资源使用方法,所述方法包括:
获取资源使用请求,所述资源使用请求用于资源使用请求的发起方请求使用资源库中的资源;
判断所述资源的状态是否为使用状态;
若所述资源的状态为使用状态,则将所述资源使用请求列入等待队列。
若所述资源的状态为未使用状态,则从资源库中取出所述资源,并由所述资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态;
所述资源使用请求的发起方使用所述资源结束后,将所述资源的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的资源使用请求。
第二方面,本发明实施例提供了一种独占资源使用装置,所述装置包括:
获取模块,用于获取资源使用请求,所述资源使用请求用于资源使用请求的发起方请求使用资源库中的资源;
判断模块,用于判断所述资源的状态是否为使用状态;
排队模块,用于若所述资源的状态为使用状态,则将所述资源使用请求列入等待队列。
使用模块,用于若所述资源的状态为未使用状态,则从资源库中取出所述资源,并由所述资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态;
激活模块,用于所述资源使用请求的发起方使用所述资源结束后,将所述资源的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的资源使用请求。
从上述本发明实施例可知,由于在资源的状态为使用状态时,将所述资源使用请求列入等待队列,并在资源使用请求的发起方使用所述资源结束后,查询等待队列,并激活所述等待队列中的资源使用请求,因此,实现了对多线程并发请求的有效控制,避免资源冲突,提高了独占资源的使用效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种独占资源使用方法的第一实施例流程图;
图2为本发明一种独占资源使用方法第二实施例流程图;
图3为本发明一种独占资源使用装置第一实施例结构示意图;
图4为本发明一种独占资源使用装置激活模块第一实施例结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明一种独占资源使用方法第一实施例流程,参见图1,所述方法包括:
101:获取资源使用请求,所述资源使用请求用于资源使用请求的发起方请求使用资源库中的资源。资源可以为文件,串口,打印机等。
例如,获取使用打印机SHARP DM-3501的使用请求。
102:判断所述资源的状态是否为使用状态。根据资源的标识查询所述资源的状态,判断所述资源的状态是否为使用状态。
例如,查询到打印机SHARP DM-3501的状态为未使用状态。
103a:若所述资源的状态为使用状态,则将所述资源使用请求列入等待队列。
例如,查询到打印机SHARP DM-3501的状态为使用状态,则将使用打印机SHARPDM-3501的请求列入等待队列,进行排队等待。
103b:若所述资源的状态为未使用状态,则从资源库中取出所述资源,并由所述资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态。
例如,查询到打印机SHARP DM-3501的状态为未使用状态,则从资源库中取出打印机SHARP DM-3501,并由使用打印机SHARP DM-3501的使用请求的发起方使用打印机SHARPDM-3501,同时将打印机SHARP DM-3501的状态标记为使用状态。
104b:所述资源使用请求的发起方使用所述资源结束后,将所述资源的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的资源使用请求。
例如,使用打印机SHARP DM-3501的使用请求的发起方使用打印机SHARP DM-3501结束后,将打印机SHARP DM-3501的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的使用打印机SHARP DM-3501的使用请求。
本实施例通过在资源的状态为使用状态时,将所述资源使用请求列入等待队列,并在资源使用请求的发起方使用所述资源结束后,查询等待队列,并激活所述等待队列中的资源使用请求,实现了对多线程并发请求的有效控制,避免资源冲突,提高了独占资源的使用效率。
本发明一种独占资源使用方法第二实施例流程,如图2所示,所述方法流程包括:
201:获取资源登记请求,将所述资源登记入资源库,并将所述资源的状态标记为未使用状态。
例如,获取打印机SHARP DM-3501的登记请求,将打印机SHARP DM-3501登记入资源库,并将打印机SHARP DM-3501的状态标记为未使用状态。
202:获取资源使用请求,所述资源使用请求用于资源使用请求的发起方请求使用资源库中的资源。与步骤101相同,此处不再赘述。
203:判断所述资源的状态是否为使用状态。与步骤102相同,此处不再赘述。
204a:若所述资源的状态为使用状态,则将所述资源使用请求列入等待队列。与步骤103a相同,此处不再赘述。
205a:所述资源使用请求列入所述等待队列预定时间后,所述资源使用请求失效。提交请求后,为避免无限等待,在期望时间内未获取独占资源后,资源使用请求失效。
例如,使用打印机SHARP DM-3501的请求列入所述等待队列5分钟后,使用打印机SHARP DM-3501的请求失效。
204b:若所述资源的状态为未使用状态,则从资源库中取出所述资源,并由所述资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态。与步骤103b相同,此处不再赘述。
205b:所述资源使用请求的发起方使用所述资源结束后,将所述资源的状态标记为未使用状态,查询等待队列中的资源使用请求,判断所述等待队列中的资源使用请求是否失效。
例如,使用打印机SHARP DM-3501的请求的发起方使用打印机SHARPDM-3501结束后,将打印机SHARP DM-3501的状态标记为未使用状态,查询等待队列中的使用打印机SHARP DM-3501的请求,判断所述等待队列中的使用打印机SHARP DM-3501的请求是否失效。
206b:若所述等待队列中的资源使用请求未失效,则由所述等待队列中的资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态。
例如,若所述等待队列中的使用打印机SHARP DM-3501的请求未失效,由所述等待队列中的使用打印机SHARP DM-3501的请求的发起方使用打印机SHARP DM-3501,将打印机SHARP DM-3501的状态标记为使用状态。
207:获取资源注销请求,将所述资源的记录从资源库中删除。
例如,获取注销打印机SHARP DM-3501的请求,将打印机SHARP DM-3501的记录从资源库中删除。
本实施例通过在资源的状态为使用状态时,将所述资源使用请求列入等待队列,并在资源使用请求的发起方使用所述资源结束后,查询等待队列,并激活所述等待队列中的资源使用请求,实现了对多线程并发请求的有效控制,避免资源冲突,提高了独占资源的使用效率;同时在期望时间内未获取独占资源后,资源使用请求失效,避免了无限等待。
与本发明一种独占资源使用方法的实施例相对应,本发明还提供一种独占资源使用装置的实施例。
本发明一种独占资源使用装置的第一实施例结构示意图如图3所示,所述装置30包括获取模块310、判断模块320、排队模块330、使用模块340和激活模块350。
获取模块310,用于获取资源使用请求,所述资源使用请求用于资源使用请求的发起方请求使用资源库中的资源。资源可以为文件,串口,打印机等。
例如,获取模块310获取使用打印机SHARP DM-3501的使用请求。
判断模块320,用于判断所述资源的状态是否为使用状态。判断模块320根据资源的标识查询所述资源的状态,判断所述资源的状态是否为使用状态。
例如,判断模块320查询到打印机SHARP DM-3501的状态为未使用状态。
排队模块330,用于若所述资源的状态为使用状态,则将所述资源使用请求列入等待队列。
例如,查询到打印机SHARP DM-3501的状态为使用状态,排队模块330则将使用打印机SHARP DM-3501的请求列入等待队列,进行排队等待。
使用模块340,用于若所述资源的状态为未使用状态,则从资源库中取出所述资源,并由所述资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态。
例如,查询到打印机SHARP DM-3501的状态为未使用状态,使用模块340则从资源库中取出打印机SHARP DM-3501,并由使用打印机SHARP DM-3501的使用请求的发起方使用打印机SHARP DM-3501,同时将打印机SHARPDM-3501的状态标记为使用状态。
激活模块350,用于所述资源使用请求的发起方使用所述资源结束后,将所述资源的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的资源使用请求。
例如,使用打印机SHARP DM-3501的使用请求的发起方使用打印机SHARP DM-3501结束后,激活模块350将打印机SHARP DM-3501的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的使用打印机SHARPDM-3501的使用请求。
优选地,一种独占资源使用装置还包括失效模块360,用于所述资源使用请求列入所述等待队列预定时间后,所述资源使用请求失效。提交请求后,为避免无限等待,在期望时间内未获取独占资源后,资源使用请求失效。
例如,使用打印机SHARP DM-3501的请求列入所述等待队列5分钟后,使用打印机SHARP DM-3501的请求失效。
优选地,一种独占资源使用装置还包括登记模块370,用于获取资源登记请求,将所述资源登记入资源库,并将所述资源的状态标记为未使用状态。
例如,登记模块370获取打印机SHARP DM-3501的登记请求,将打印机SHARP DM-3501登记入资源库,并将打印机SHARP DM-3501的状态标记为未使用状态。
优选地,一种独占资源使用装置还包括注销模块380,用于获取资源注销请求,将所述资源的记录从资源库中删除。
例如,注销模块380获取注销打印机SHARP DM-3501的请求,将打印机SHARP DM-3501的记录从资源库中删除。
其中,激活模块350包括查询单元351和使用单元352。
查询单元351,用于查询等待队列中的资源使用请求,判断所述等待队列中的资源使用请求是否失效。
例如,使用打印机SHARP DM-3501的请求的发起方使用打印机SHARPDM-3501结束后,查询单元351将打印机SHARP DM-3501的状态标记为未使用状态,查询等待队列中的使用打印机SHARP DM-3501的请求,判断所述等待队列中的使用打印机SHARP DM-3501的请求是否失效。
使用单元352,用于若所述等待队列中的资源使用请求未失效,则由所述等待队列中的资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态。
例如,若所述等待队列中的使用打印机SHARP DM-3501的请求未失效,由所述等待队列中的使用打印机SHARP DM-3501的请求的发起方使用打印机SHARP DM-3501,将打印机SHARP DM-3501的状态标记为使用状态。
本实施例通过在资源的状态为使用状态时,将所述资源使用请求列入等待队列,并在资源使用请求的发起方使用所述资源结束后,查询等待队列,并激活所述等待队列中的资源使用请求,实现了对多线程并发请求的有效控制,避免资源冲突,提高了独占资源的使用效率;同时在期望时间内未获取独占资源后,资源使用请求失效,避免了无限等待。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种独占资源使用方法,其特征在于,所述方法包括:
获取资源使用请求,所述资源使用请求用于资源使用请求的发起方请求使用资源库中的资源;所述资源的属性为独占资源;
判断所述资源的状态是否为使用状态;
若所述资源的状态为使用状态,则将所述资源使用请求列入等待队列;
若所述资源的状态为未使用状态,则从资源库中取出所述资源,并由所述资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态;
所述资源使用请求的发起方使用所述资源结束后,将所述资源的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的资源使用请求;所述若所述资源的状态为使用状态,则将所述资源使用请求列入等待队列之后还包括:
所述资源使用请求列入所述等待队列预定时间后,所述资源使用请求失效。
2.根据权利要求1所述的方法,其特征在于,所述查询等待队列,并激活所述等待队列中的资源使用请求包括:
查询等待队列中的资源使用请求,判断所述等待队列中的资源使用请求是否失效;
若所述等待队列中的资源使用请求未失效,则由所述等待队列中的资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态。
3.根据权利要求1所述的方法,其特征在于,所述获取资源使用请求之前还包括:
获取资源登记请求,将所述资源登记入资源库,并将所述资源的状态标记为未使用状态。
4.根据权利要求1所述的方法,其特征在于,所述资源使用请求的发起方使用所述资源结束后,将所述资源的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的资源使用请求之后还包括:
获取资源注销请求,将所述资源的记录从资源库中删除。
5.一种独占资源使用装置,其特征在于,所述装置包括:
获取模块,用于获取资源使用请求,所述资源使用请求用于资源使用请求的发起方请求使用资源库中的资源;所述资源的属性为独占资源;
判断模块,用于判断所述资源的状态是否为使用状态;
排队模块,用于若所述资源的状态为使用状态,则将所述资源使用请求列入等待队列;
使用模块,用于若所述资源的状态为未使用状态,则从资源库中取出所述资源,并由所述资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态;
激活模块,用于所述资源使用请求的发起方使用所述资源结束后,将所述资源的状态标记为未使用状态,查询等待队列,并激活所述等待队列中的资源使用请求;
失效模块,用于所述资源使用请求列入所述等待队列预定时间后,所述资源使用请求失效。
6.根据权利要求5所述的装置,其特征在于,所述激活模块包括:
查询单元,用于查询等待队列中的资源使用请求,判断所述等待队列中的资源使用请求是否失效;
使用单元,用于若所述等待队列中的资源使用请求未失效,则由所述等待队列中的资源使用请求的发起方使用所述资源,将所述资源的状态标记为使用状态。
7.根据权利要求5所述的装置,其特征在于,还包括:
登记模块,用于获取资源登记请求,将所述资源登记入资源库,并将所述资源的状态标记为未使用状态。
8.根据权利要求5所述的装置,其特征在于,还包括:
注销模块,用于获取资源注销请求,将所述资源的记录从资源库中删除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310750997.8A CN103729253B (zh) | 2013-12-31 | 2013-12-31 | 一种独占资源使用方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310750997.8A CN103729253B (zh) | 2013-12-31 | 2013-12-31 | 一种独占资源使用方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103729253A CN103729253A (zh) | 2014-04-16 |
CN103729253B true CN103729253B (zh) | 2017-08-04 |
Family
ID=50453336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310750997.8A Active CN103729253B (zh) | 2013-12-31 | 2013-12-31 | 一种独占资源使用方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103729253B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104657237A (zh) * | 2015-03-12 | 2015-05-27 | 浪潮集团有限公司 | 一种检测磁盘阵列的方法 |
CN106648877B (zh) * | 2015-10-28 | 2020-08-25 | 阿里巴巴集团控股有限公司 | 资源申请、释放方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567805A (zh) * | 2009-05-22 | 2009-10-28 | 清华大学 | 并行文件系统发生故障后的恢复方法 |
CN101631328A (zh) * | 2009-08-14 | 2010-01-20 | 北京星网锐捷网络技术有限公司 | 一种对共享资源互斥访问的同步方法、装置和网络设备 |
-
2013
- 2013-12-31 CN CN201310750997.8A patent/CN103729253B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567805A (zh) * | 2009-05-22 | 2009-10-28 | 清华大学 | 并行文件系统发生故障后的恢复方法 |
CN101631328A (zh) * | 2009-08-14 | 2010-01-20 | 北京星网锐捷网络技术有限公司 | 一种对共享资源互斥访问的同步方法、装置和网络设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103729253A (zh) | 2014-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8713186B2 (en) | Server-side connection resource pooling | |
KR101855541B1 (ko) | 컴퓨트 클러스터에서의 디버거 런칭 및 첨부 기법 | |
JP2008544400A5 (zh) | ||
JP2015536603A5 (zh) | ||
TW201709698A (zh) | 用於驗證源位址有效性的方法及裝置 | |
JP2011008564A5 (zh) | ||
JP2014510969A5 (zh) | ||
WO2016101664A1 (zh) | 一种指令调度方法及装置 | |
WO2012139474A1 (zh) | 数据的获取方法、设备和系统 | |
EP2006790A3 (en) | Method and system for preventing impersonation of a computer system user | |
CN103729253B (zh) | 一种独占资源使用方法及装置 | |
CN109062982B (zh) | 财务数据交互方法、装置、计算机设备和存储介质 | |
WO2017143824A1 (zh) | 事务执行方法、装置及系统 | |
JP2014533862A5 (zh) | ||
CN103905484B (zh) | 处理超文本传输协议请求的方法及装置 | |
JP2008191711A5 (zh) | ||
JP2009545090A5 (zh) | ||
CN106209951A (zh) | 信息传输方法、客户端及服务器 | |
JP2008293153A5 (zh) | ||
JP6034368B2 (ja) | 認証情報処理 | |
JP2003182166A5 (zh) | ||
JP5893624B2 (ja) | マルチコアシステムのためのダイレクトメモリアクセス装置およびその動作方法 | |
CN109117278A (zh) | 一种移动终端及其进程间通信的限制方法、存储介质 | |
JP2011227867A5 (zh) | ||
WO2020006901A1 (zh) | 资金归集方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |