[发明专利]一种基于共享资源的任务的处理方法及装置有效
申请号: | 201210353329.7 | 申请日: | 2012-09-20 |
公开(公告)号: | CN102902573A | 公开(公告)日: | 2013-01-30 |
发明(设计)人: | 王帅 | 申请(专利权)人: | 北京搜狐新媒体信息技术有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 100084 北京市海淀区中关*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 共享资源 任务 处理 方法 装置 | ||
技术领域
本申请涉及共享资源的访问技术领域,特别涉及一种基于共享资源的任务的处理方法及其相应装置。
背景技术
随着信息技术的发展,为满足各种应用需求,需要处理的任务数量急剧膨胀,处理这些任务的过程中使用的资源种类和数量也越来越多。但是,在一定时期内,处理各种任务的资源总量相对有限。为保证任务顺利处理,资源通常需要共享,即多个任务共同使用一个资源或几个资源以完成任务的处理。在资源共享情况下,必须存在协调机制来协调各种任务对资源的占用,避免资源访问过程中出现冲突,从而确保任务的正确执行和处理。
对于共享资源的待处理任务,现有技术在处理过程中常采用的一种协调机制是互斥锁机制。通过该机制多个需要资源的任务首先获得资源对应的互斥锁,然后独占地使用资源,获得互斥锁的任务利用资源执行完毕后,解除互斥锁,以便其他任务争抢互斥锁执行自身的任务。这种互斥锁机制虽然保证了基于共享资源的任务的“和谐”。但是,随着待处理的任务涉及的资源类型和数量的增加,由于不同类型的资源维护有各自的互斥锁,处理该类型的任务则需要多个互斥锁,从而对互斥锁的操作变得相当复杂,极其容易导致“死锁”。由此可见,现有处理基于共享资源的任务采用的锁机制降低了系统的任务吞吐量,影响了任务的执行效率。
发明内容
为解决上述技术问题,本申请实施例提供了一种基于共享资源的任务的处理方法及其相应装置,以提高基于共享资源的任务的执行效率。
本申请实施例提供的基于共享资源的任务的处理方法包括:
接收待处理任务;
根据待处理任务需要的资源的标识将待处理任务放入多级分类组合队列组中相应资源节点的任务队列,所述多级分类组合队列组的任务队列与根据资源上下级关系确定的资源节点树的资源节点具有对应关系;
判断多级分类组合队列组的各资源节点对应的任务队列内是否存在满足预设条件的待处理任务,如果存在,则取出满足预设条件的待处理任务进行处理。
优选地,判断多级分类组合队列组的各资源节点对应的任务队列内是否存在满足预设条件的待处理任务具体包括:
判断多级分类组合队列组中与第一个级别的资源节点对应的任务队列内是否存在满足预设条件的待处理任务,如果存在,则取出满足预设条件的待处理任务进行处理;如果不存在,则判断与第一个级别的下一级别的资源节点对应的任务队列内是否存在满足预设条件的待处理任务,如果是,则取出满足预设条件的待处理任务进行处理。
进一步优选地,所述方法还包括:建立用于反映资源节点对应的任务队列内各任务执行情况的标记,则:判断多级分类组合队列组的各资源节点对应的任务队列内是否存在满足预设条件的待处理任务具体包括:
读取资源节点对应的任务队列内的任务的标记信息;
根据读取的标记信息判断资源节点对应的任务队列内是否存在满足预设条件的待处理任务;在满足预设条件的待处理任务处理完成后修改其对应的标记信息。
进一步优选地,所述标记包括当前任务处理完成标记、当前资源节点的子节点的当前任务处理完成标记、资源让出标记和/或立即处理标记。
优选地,在接收待处理任务后,将接收的待处理任务放入候选任务队列,按照预设规则读取候选任务队列中的待处理任务;则所述根据待处理任务需要的资源的标识将待处理任务放入多级分类组合队列组中对应资源节点的任务队列具体为:
根据从候选任务中读取的待处理任务需要的资源的标识将该待处理任务放入多级分类组合队列组中相应资源节点的任务队列。
优选地,所述取出满足预设条件的待处理任务进行处理具体包括:
从线程池中取出空闲线程;
利用该空闲线程执行取出的待处理任务。
本申请实施例还提供了一种基于共享资源的任务的处理装置。该装置包括:接收单元、第一放入单元、判断单元和处理单元,其中:
所述接收单元,用于接收待处理任务;
所述第一放入单元,用于根据待处理任务需要的资源的标识将待处理任务放入多级分类组合队列组中相应资源节点的任务队列,所述多级分类组合队列组的任务队列与根据资源上下级关系确定的资源节点树的资源节点具有对应关系;
所述判断单元,用于判断多级分类组合队列组的各资源节点对应的任务队列内是否存在满足预设条件的待处理任务,如果存在,则触发处理单元;
所述处理单元,用于取出满足预设条件的待处理任务进行处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京搜狐新媒体信息技术有限公司,未经北京搜狐新媒体信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210353329.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:链式缝纫机上的自动剪线总成
- 下一篇:一种可调式医用帽机的预压紧装置