资源分配的方法及系统与流程

文档序号:12363163阅读:682来源:国知局
资源分配的方法及系统与流程

本申请涉及互联网技术领域,尤其涉及一种资源分配的方法及系统。



背景技术:

传统的资源管理系统中,可以使用服务器管理资源的分配。资源数量增减反映了资源接收和分配的状态。例如,针对火车票的售票系统,当用户发出购买请求时,售票系统从当前空闲的座位选择一个提供给用户。资源的来源与去向通过用户代码的形式进行跟踪,即售票系统需要对不同的用户通过用户代码的形式进行区分。火车票涉及的车次信息、行程信息、座位信息等数据可以保存于服务器的数据库中。

随着互联网技术的发展,资源的种类及数量有了极大的增长,参与资源分配的用户同样有了极大的增长。再以火车票的售票系统为例来说明。此时,可以在线购买火车票的用户数量大幅增加。巨大数量的用户可以同时访问售票系统。这些用户所携带的信息数据超出了一台服务器内存的物理限制,因而,这些信息数据通常需要保存于服务器的数据库中。数据库可以开放一定数量的接口,用于处理并发的多个用户的访问请求。针对某车次的某座位,当多个用户同时选定该座位时,该座位由优先权最高的用户占用,在该座位占用的信息被更新到数据库前,其他用户处于等待状态。也就是说,当多个资源请求方向资源管理系统发出针对某资源的分配请求的请求时,为保证资源管理系统的资源数量的准确性,该资源向具有最优分配权的资源请求方进行分配。分配未完成时,资源管理系统中资源信息处于锁定状态,其他资源请求方的资源的分配请求的请求处于等待处理的状态。

在实现现有技术过程中,发明人发现现有技术中至少存在如下问题:

多个资源请求方向资源管理系统发出针对某资源的分配请求的请求时,资源分配完成时,处于劣势地位的资源请求方获得资源分配请求失败的信息等待时间长,用户体验差。



技术实现要素:

本申请实施例提供一种获得资源分配请求拒绝的信息等待时间短,用户体验好的方法。具体的,一种资源分配的方法,包括以下步骤:

高速缓冲存储器存储资源的占用或空闲的状态;

高速缓冲存储器存储资源的分配请求;

处理器解析所述分配请求,获得分配请求针对的资源;

处理器从对同一资源提出所述分配请求的请求方中查找优先级最高的第一请求方;

处理器向除第一请求方之外的请求方发出分配请求拒绝的信息。

本申请实施例还提供一种资源分配的系统,包括:

高速缓冲存储器,用于:

存储资源的占用或空闲的状态;

存储资源的分配请求;

处理器,用于:

解析所述分配请求,获得分配请求针对的资源;

从对同一资源提出所述分配请求的请求方中查找优先级最高的第一请求方;

向除第一请求方之外的请求方发出分配请求拒绝的信息。

本申请实施例提供的资源分配的方法和系统,至少具有如下有益效果:

当多个请求方针对同一资源提出分配请求时,处理器直接向第一请求方之外的请求方发出分配请求拒绝的信息。处于劣势地位的资源请求方获得资源分 配请求拒绝的信息等待时间短,用户体验好。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例提供的网络化环境的示意图。

图2为本申请实施例提供的资源分配的方法的流程图。

图3为本申请实施例提供的处理器从对同一资源提出分配请求的请求方中查找优先级最高的第一请求方。

图4为本申请实施例提供的资源分配的方法的另一部分流程图。

图5为本申请实施例提供的资源分配的系统的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

参照图1,所示的是本申请提供申请实施例的网络化环境100。网络化环境100包括网络101、经由网络101连接起来、可以进行数据通信的一个或多个客户端102和运营服务器103。运营服务器103可以包括,集成于运营服务器103内的计算环境104,或者独立于运营服务器103外的计算环境104。

网络101可以包括例如互联网、广域网(WAN)、局域网(LAN)、移动通信网络或其它合适的网络,以及两个或多个这类网络的任何组合。在本申请实施例中提及之术语“数据”和“信息”,可在本文中互换地用于指代可存在于计算 机环境中的文本、图像、音频、视频或任何其它形式的信息。

客户端102可以是指安装有应用程序的网络装置。这样的网络装置从硬件上可以包括服务器、桌上型计算机、膝上型计算机、平板计算机、智能电话、手持型计算机、个人数字助理(“PDA”),或任何其它有线或无线处理器驱动的装置。从系统软件上,可以是集成了网络浏览器的操作系统,或者是安装有专用应用程序的操作系统;这样的操作系统可以是windows系列的操作系统或Linux操作系统等,也可以是移动平台中的Android、IOS等。

运营服务器103上可以包括可购买获得的超文本传送协议(HTTP)服务器应用,如HTTP服务器、互联网信息服务(IIS)和/或其它服务器。

用户使用客户端102并通过网络101向运营服务器103发起注册请求。此时,运营服务器103可以记录该用户的注册信息,并按照注册请求在运营服务器103中开设预置权限的账号。后续每次用户通过客户端102访问运营服务器103的应用程序时,运营服务器103基于每次访问时的信息中包含的用户ID之类的表明用户身份的标识,可以获知并记录这样的访问。特别的,可以记录该用户的访问时间,可选择的,也可以记录访问时的IP地址,或者所采用的网络装置的硬件类型,或者客户端版本/客户端所基于的操作系统版本之类信息中一个或多个。特别的,对于发生特定操作的访问,例如发表留言(如像社交网站中的发表留言),添加好友,购买虚拟物品等时,运营服务器103可以记录该操作访问,并通过执行相应的内部或外部的处理后给予用户特定的响应。一般地,所有操作请求和一般性的访问,均会在运营服务器中留下相应记录。运营服务器可以按照用户ID来分别归类不同用户的所有操作。对于交互行为的操作,例如不同注册用户之间的交互,也可以按照上述用户ID分类并构成集合。

可以用数据库105来存储上述用户访问信息。此外,数据库105中还可以存储的数据包括例如应用要求数据、商业规则、客户端102能力数据、应用市场数据、顾客数据等。数据库105中的应用可以与由开发者提供的应用程序对 应。应用可以包括例如移动应用、超文本标记语言5(HTML5)应用、桌面应用和/或其它应用。

计算环境104可以包括例如服务器计算机或提供计算能力的任何其它系统。可选地,在计算环境104中可以采用一个或多个计算设备,所述多个计算设备可以被布置成一个或多个服务器组或计算机组或其它装置。例如,多个计算设备可以共同构成云计算资源、网格计算资源和/或任何其它分布式计算装置。下述本申请的各种实施例,可以在配置有可执行指令的一个或多个计算装置的控制下执行。

根据各种实施方案,可以在计算环境103中执行各种应用程序和/或其它功能性。在计算环境103上执行的应用程序例如访问数据引入服务、访问数据分析服务、应用数据引入服务、应用数据分析服务以及本文未详细论述的其它应用、服务、进程、系统、引擎或功能性。

另外,各种数据可以由计算环境103获得,例如从上述数据库105中获得。如可以了解的,数据库105可以表示多个数据库的集合。存储在数据库105中的数据可以与以下描述的各种实施例的操作相关联。

在计算机中,高速缓冲存储器(Cache)是存在于主存与CPU之间的一级存储器。高速缓冲存储器由静态存储芯片(SRAM)组成,速度比主存高得多,接近于CPU的速度。

图2为本申请实施例提供的资源分配的方法的流程图,具体包括以下步骤:

S100:高速缓冲存储器存储资源的占用或空闲的状态。

高速缓冲存储器10来源于运营服务器103。

在本申请提供的一种实施例中,高速缓冲存储器10存储资源的每一个资源粒子的占用或空闲的状态;

其中,每一个资源粒子具有唯一的空间因子标识。

空间因子可以藉由第一维度变量和第二维度变量表征。在一种具体的实施 方案中,资源在二维空间可以藉由行变量与列变量表征。例如,电影院5行4列的座位藉由行变量5和列变量4表征。这里的行变量表现为行序号,列变量表现为列序号。应当指出的是,这里的第一维度变量和第二维度变量并不限于水平平面空间的行变量与列变量。其中的变量还可以是竖直平面空间的变量。例如,火车卧铺的上铺、中铺或下铺的高度变量。

进一步的,在本申请提供的又一实施例中,资源可以按照时间因子和空间因子被划分为若干资源粒子;高速缓冲存储器10存储资源粒子的占用或空闲的状态。资源可以通过时间因子进一步细分。时间因子可以由第三维度变量表征。例如,5月1日的电影院5行4列的座位。这里的第一维度变量表现为行序号,第二维度变量表现为列序号,第三维度变量表现为日期。

资源粒子的占用或空闲的状态可以藉由二进制的符号表示。例如,可以是逻辑值的false值和true值,也可以是0值和1值。当然,也可以是其他符号、代码,例如摩尔斯电码的点和线等。

在本申请提供的实施例中,0值表示资源粒子空闲,1值表示资源粒子占用。具体的,资源粒子的状态由键代码、和与键代码对应的键值表征。高速缓冲存储器10存储资源粒子的键代码。键代码至少包括第一维度变量和第二维度变量。该键代码对应的键值至少包括用于表示空闲的数值或用于表示占用的数值,例如可以为0值或1值。这里的键值为0值或1值,可以是键值仅有一个字节表示的0值或1值,也可是键值中某一位或几位中包含0值或1值。假设存在这样一个键代码201506010504,其中,前8位为时间因子,表示2015年6月1日;第9至12位为空间因子,表示5行4列。当该键代码对应的键值为1时,表示该资源粒子占用,而当键代码对应的键值为0时,则表示该资源粒子空闲。

在本申请提供的又一实施例中,高速缓冲存储器10存储的一个资源粒子集合共用的键代码。该键代码至少包括第一维度变量。该键代码对应的键值至少包括依照顺序排列的0值和1值。假设存在这样一个键代码为2015060105, 其中,前8位为时间因子,表示2015年6月1日;第9-10位为空间因子,表示5行。当该键代码对应的键值为0001001000,表示第4列、第7列的资源粒子占用。例如,由该键代码和键值构成的键值对表示电影院的座位时,键代码为2015060105,键代码对应的键值为0001001000,表示2015年6月1日的5行4列和5行7列的座位占用。

假设,在时间因子确定的情形下,高速缓冲存储器10内存储的资源粒子的键代码至少包括第一维度变量和第二维度变量。该键代码对应的键值可以为0值或1值。资源粒子有5行10列,在查询资源粒子的占用或空闲的状态时,可能需要遍历5*10个键代码,才能查清楚所有资源粒子的占用或空闲的状态。而,这里高速缓冲存储器10内存储的资源粒子的键代码至少包括第一维度变量。该键代码对应的键值至少包括依照第二维度变量的顺序排列的0值和1值。在查询资源粒子的占用或空闲的状态时,可能需要遍历5个键代码,就能查清楚所有资源粒子的占用或空闲的状态。

进一步的,在本申请提供的又一实施例中,第一维度变量的元素个数小于等于第二维度变量的元素个数。例如,资源粒子有5行10列时,第一维度变量为行变量,元素有5个,第二维度变量为列变量,元素有10个。需要遍历的键代码为5个。相反,资源粒子有10行5列时,第一维度变量为行变量,元素有10个,第二维度变量为列变量,元素有5个,此时,在查询资源粒子的占用或空闲的状态时,可能需要遍历的键代码为10,才能查清楚所有资源粒子的占用或空闲的状态。

S200:高速缓冲存储器存储资源的分配请求。

资源的分配请求来源于一个或多个客户端102发出的分配请求。一个或多个客户端102发出的分配请求可以藉由网络101,通过数据通信的方式传输到运营服务器103。运营服务器103的高速缓冲存储器10可以存储资源的分配请求。

一个或多个用户通过客户端102可以并发地发出的多项分配请求。用户发 出的分配请求可以是针对一个资源粒子的分配请求,也可以是一个批次多个资源粒子的分配请求,还可以是多个用户多个批次针对多个资源粒子的多项分配请求。

分配请求可以是针对特定的一个或若干个资源粒子的分配请求。在本申请提供的一种实施例中,高速缓冲存储器10存储分配请求的请求键代码。该请求键代码与分配请求指向的资源粒子的键代码关联。一种关联方式为,请求键代码包含资源粒子的键代码,即资源粒子的键代码作为请求键代码的一部分。资源粒子的键代码可以包含第一维度变量和第二维度变量,例如,请求键代码为201506010504,表示2015年6月1日的电影院的5行4列的座位是观众指定要购买的电影票上的座位。

在本申请提供的又一实施例中,高速缓冲存储器10存储分配请求的请求键代码。该请求键代码与分配请求指向的一个资源粒子集合共用的键代码关联。一种关联方式为,请求键代码包含资源粒子的键代码,即资源粒子的键代码作为请求键代码的一部分。高速缓冲存储器10存储请求键代码对应的请求键值。该请求键值包括依照顺序排列的0值和1值。分配请求指向资源粒子集合内的、第二维度变量为1值在请求键值中的序号的资源粒子。假设,请求键值为0001001000,该请求键值表示资源粒子集合的、第二维度变量为4和第二维度变量为7的两个资源粒子是分配请求的对象。例如,请求键代码中部分为2015060105,其中,前8位为时间因子,表示2015年6月1日;第9-10位为空间因子,表示5行。请求键代码对应的请求键值为0001001000,表示2015年6月1日的电影院的5行4列的座位和5行7列的座位是观众指定要购买的电影票上的座位。

S300:处理器解析所述分配请求,获得分配请求针对的资源。

处理器20解析分配请求,根据请求键代码、请求键值与资源粒子的键代码、键值的关联关系,获得第一维度变量和第二维度变量。例如,根据请求键代码、请求键值与资源粒子的键代码、键值的关联关系,确定资源粒子的键代 码为201506010504,获得第一维度变量5和第二维度变量4。或者,根据请求键代码、请求键值与资源粒子的键代码、键值的关联关系,确定资源粒子的键代码为2015060105和请求键值0001001000,获得第一维度变量5、第二维度变量4和第一维度变量5、第二维度变量7。

S400:处理器从对同一资源提出分配请求的请求方中查找优先级最高的第一请求方。

请参照图3,在本申请提供的一种实施例中,S401:处理器确定对同一资源粒子提出分配请求的请求方;

S402:处理器根据请求方的等级或提出分配请求的顺序,选定等级最高的请求方或最先提出分配请求的请求方;

S403:设第一请求方为选定的请求方。

在上一步骤中,处理器20解析分配请求,获得第一维度变量和第二维度变量。空间因子主要由第一维度变量和第二维度变量表征。因此,处理器20通过第一维度变量和第二维度变量可以确定空间因子。空间因子与资源粒子一一对应。进而,处理器20通过第一维度变量和第二维度变量可以确定资源粒子。处理器20从存储资源的分配请求的高速缓冲存储器10中查找对资源粒子提出分配请求的一个或多个请求方。在本申请实施例中,处理器20可以对请求方的优先级进行排序。本申请实施例提供的一种优先级排序的方式是根据请求方的等级进行排序。本申请提供的另一种优先级排序的方式是根据请求方提出分配请求的先后顺序进行排序。处理器20将优先级最高的请求方设定为第一请求方。

S500:处理器向除第一请求方之外的请求方发出分配请求拒绝的信息。

由于资源粒子的有限性,只能被分配一次。因此,当多个请求方针对同一资源提出分配请求时,处理器20直接向第一请求方之外的请求方发出分配请求拒绝的信息。处于劣势地位的资源请求方获得资源分配请求拒绝的信息等待时间短,用户体验好。

进一步的,在本申请提供的又一实施例中,方法还包括:

处理器20根据第一维度变量和第二维度变量,在高速缓冲存储器10中查找资源粒子的键代码;

处理器20根据键代码,查询该键代码对应的键值是否为用于表示占用的数值;

当数值为用于表示占用的数值时,处理器20向第一请求方发出分配请求拒绝的信息。

资源粒子具有占用或空闲两种状态。当资源粒子占用时,资源粒子的键代码对应的键值为1值。资源粒子无法被再次分配给第一请求方,处理器20向第一请求方发出分配请求拒绝的信息。假设,高速缓冲存储器10存储的资源粒子的键代码为201506010504,该键代码对应的键值为1。当第一请求方的分配请求指向的资源粒子是该资源粒子时,处理器20向第一请求方发出分配请求拒绝的信息。例如,高速缓冲存储器10存储的电影票的键代码为201506010504,该键代码对应的键值为1。键代码和键值构成的键值对表示,标注有2015年6月1日5行4列的座位的电影票已经被售出。当作为第一请求方的用户发出购买该电影票的购买请求时,处理器20向该作为第一请求方的用户发出购买请求拒绝的信息。

进一步的,在本申请提供的又一实施例中,方法还包括:

处理器20根据第一维度变量,查找分配请求指向的资源粒子所在的资源粒子集合共用的键代码;

处理器20根据键代码,查询键值中的、以第二维度变量作为序号的数值是否为用于表示占用的数值;

当数值为用于表示占用的数值时,处理器20向第一请求方发出分配请求拒绝的信息。

假设,高速缓冲存储器10存储的资源粒子的键代码为2015060105,该键代码对应的键值为0001001000。当第一请求方的分配请求指向的资源粒子的 第一维度变量为5、第二维度变量为4时,处理器20向第一请求方发出分配请求拒绝的信息。例如,高速缓冲存储器10存储的电影票的键代码为2015060105,该键代码对应的键值为0001001000。键代码和键值构成的键值对表示,标注有2015年6月1日5行4列的座位的电影票和2015年6月1日5行7列的座位的电影票已经被售出。当作为第一请求方的用户发出购买该两张中的任意张电影票的购买请求时,处理器20向该作为第一请求方的用户发出购买请求失败的信息。

请参照图4,进一步的,在本申请提供的又一实施例中,所述分配请求具有多项;

处理器20解析多项分配请求,获得每项分配请求指向的第一维度变量和第二维度变量;

处理器20根据每项分配请求指向的第一维度变量,查找分配请求指向的资源粒子所在的资源粒子集合共用的键代码;

处理器20查找资源粒子集合共用的键代码的对应的键值中的、以第二维度变量作为序号的数值,并对所述数值进行预设的操作生成操作结果;

处理器20查找操作结果中非法的数值,并确定非法的数值在所述键值中的序号;

处理器20发出多项分配请求中第一分配请求拒绝的信息;

其中,第一分配请求是多项分配请求中指向第一资源粒子的分配请求;

第一资源粒子的第二维度变量是操作结果中非法的数值在所述键值中的序号。

在本申请实施例提供的一种场景下,一个请求方可以一并提出多项分配请求。例如,高速缓冲存储器10存储请求键代码,该请求键代码的一部分为2015060105。该请求键代码对应的请求键值为0001001000。该请求键代码和请求键值构成键值对表示对2015年6月1日5行4列的资源粒子和2015年6月1日5行7列的资源粒子的两个资源粒子的分配请求。处理器20解析该两 项分配请求后,获得一项分配请求指向的第一维度变量为5、第二维度变量4,获得的另一项分配请求指向的第一维度变量为5、第二维度变量7。处理器20根据第一维度变量,查找资源粒子所在的资源粒子集合共用的键代码2015060105。假设,资源粒子集合的键代码对应的键值为0000001000。处理器20查找资源粒子集合共用的键代码的对应的键值中的、以第二维度变量作为序号的数值,例如键值中第4位的0值和键值中第7位的1值,并对该0值和1值进行加1的预设操作生成1值和2值的操作结果0001002000。处理器20查找操作结果中非法的数值2值,并确定非法的数值2值在所述键值中的序号7。处理器20发出该两项分配请求中指向的第一维度变量为5、第二维度变量7的第一分配请求拒绝的信息。

在该场景下,进一步的,处理器20将键值的操作结果中非法的数值2值恢复为用于表示占用的数值1值。

在本申请实施例提供的另一种场景下,多个请求方可以提出多项分配请求,由处理器20进行批次统一处理。该场景与上一场景相近似,因此,此处不再赘述。

在本申请提供的又一实施例中,方法还包括:

处理器20发出针对第二分配请求的确认请求;

在预设时间内收到确认请求指令时,处理器20将键值保留操作结果中的用于表示占用的数值并存储于高速缓冲存储器10;

其中,第二分配请求是多项分配请求中指向第二资源粒子的分配请求;

第二资源粒子的第二维度变量是操作结果中用于表示占用的数值在所述键值中的序号。

仍以上面提供的场景为例来说明,处理器20查找操作结果中1值的数值,并确定1值的数值在所述键值中的序号4。处理器20发出该两项分配请求中指向的第一维度变量为5、第二维度变量4的第二分配请求的确认请求。在预设时间内收到确认请求指令时,处理器20将键值保留操作结果中的1值,即 键值0001001000,并存储于高速缓冲存储器10。而在该场景下,当预设时间内未收到确认请求指令时,处理器20将键值中操作结果中的1值的数值恢复为0值,即键值0000001000。超过预设时间未收到确认请求指令时,将键值中对应的数值恢复,可以便利其他用户对该数值对应的资源粒子提出分配请求。

进一步的,在本申请提供的又一实施例中,方法还包括:

处理器20建立由第一维度变量为行或列、第二维度变量为列或行的列表;

处理器20获取第一维度变量和第二维度变量交叉点的资源粒子的空闲或占用状态;

处理器20赋予空闲状态第一色彩信息,赋予占用状态第二色彩信息。

假设,5行4列的座位和5行7列的座位占用。处理器20建立5行10列的列表。第一维度变量为5、第二维度变量为4和第一维度变量为5、第二维度变量为7两个交叉点的资源粒子占用。处理器20赋予列表中该两个资源粒子所在的单元格以第二色彩信息灰色,而赋予列表中的其他位置以第一色彩信息白色。将不同状态的资源粒子以不同色彩进行标识,方便用户进行观察与选择。

以上是本申请实施例提供的数据处理的方法,基于同样的思路,请参照图5,本申请还提供一种资源分配的系统1,包括:

高速缓冲存储器10,用于:

存储资源的占用或空闲的状态;

存储资源的分配请求;

处理器20,用于:

解析所述分配请求,获得分配请求针对的资源;

从对同一资源提出分配请求的请求方中查找优先级最高的第一请求方;

向除第一请求方之外的请求方发出分配请求拒绝的信息。

进一步的,所述高速缓冲存储器具体用于:

存储资源的每一个资源粒子的占用或空闲的状态;

其中,每一个资源粒子具有唯一的空间因子标识。

进一步的,所述空间因子包括第一维度变量和第二维度变量。

进一步的,高速缓冲存储器10具体用于:

存储的资源粒子的键代码,所述键代码至少包括第一维度变量和第二维度变量;

存储所述键代码对应键值,所述键值至少包括用于表示空闲的数值或用于表示占用的数值。

进一步的,高速缓冲存储器10具体用于:

存储分配请求的请求键代码,所述请求键代码与分配请求指向的资源粒子的键代码关联。

进一步的,高速缓冲存储器10具体用于:

存储的一个资源粒子集合共用的键代码,所述键代码至少包括第一维度变量;

存储键代码对应的键值,所述键值至少包括依照顺序排列的用于表示空闲的数值和用于表示占用的数值;

其中,资源粒子集合内的、第二维度变量为用于表示空闲的数值在所述键值中的序号的资源粒子空闲,资源粒子集合内的、第二维度变量为用于表示占用的数值在所述键值中的序号的资源粒子占用。

进一步的,第一维度变量的元素个数小于等于第二维度变量的元素个数。

进一步的,高速缓冲存储器10,具体用于:

存储分配请求的请求键代码,所述请求键代码与分配请求指向的一个资源粒子集合共用的键代码关联;

存储请求键代码对应的请求键值,所述请求键值包括依照顺序排列的用于表示空闲的数值和用于表示占用的数值;

其中,分配请求指向资源粒子集合内的、第二维度变量为用于表示占用的 数值在所述请求键值中的序号的资源粒子。

进一步的,处理器20具体用于:

解析分配请求,获得第一维度变量和第二维度变量。

进一步的,处理器20具体用于:

确定对同一资源粒子提出分配请求的请求方;

根据请求方的等级或提出分配请求的顺序,选定等级最高的请求方或最先提出分配请求的请求方;

处理器设第一请求方为选定的请求方。

进一步的,处理器20还用于:

根据第一维度变量和第二维度变量,在高速缓冲存储器中查找资源粒子的键代码;

根据键代码,查询该键代码对应的键值是否为用于表示占用的数值;

当数值为用于表示占用的数值时,处理器向第一请求方发出分配请求拒绝的信息。

进一步的,处理器20还用于:

根据第一维度变量,查找分配请求指向的资源粒子所在的资源粒子集合共用的键代码;

根据键代码,查询键值中的、以第二维度变量作为序号的数值是否为用于表示占用的数值;

当数值为用于表示占用的数值时,处理器向第一请求方发出分配请求拒绝的信息。

进一步的,所述分配请求具有多项;高速缓冲存储器10用于:

处理器20还用于:

解析多项分配请求,获得每项分配请求指向的第一维度变量和第二维度变量;

根据每项分配请求指向的第一维度变量,查找分配请求指向的资源粒子所 在的资源粒子集合共用的键代码;

查找资源粒子集合共用的键代码的对应的键值中的、以第二维度变量作为序号的数值,并对所述数值进行预设的操作生成操作结果;

查找操作结果中非法的数值,并确定非法的数值在所述键值中的序号;

发出多项分配请求中第一分配请求拒绝的信息;

其中,第一分配请求是多项分配请求中指向第一资源粒子的分配请求;

第一资源粒子的第二维度变量是操作结果中非法的数值在所述键值中的序号。

进一步的,处理器20还用于:

将键值的操作结果中非法的数值恢复为用于表示占用的数值。

进一步的,处理器20还用于:

发出针对第二分配请求的确认请求;

在预设时间内收到确认请求指令时,将键值保留操作结果中的1值并存储于高速缓冲存储器;

其中,第二分配请求是多项分配请求中指向第二资源粒子的分配请求;

第二资源粒子的第二维度变量是操作结果中用于表示占用的数值在所述键值中的序号。

进一步的,处理器20还用于:

在预设时间内未收到确认请求指令时,将键值中操作结果中的用于表示占用的数值恢复为用于表示空闲的数值。

进一步的,处理器20还用于:

建立由第一维度变量为行或列、第二维度变量为列或行的列表;

获取第一维度变量和第二维度变量交叉点的资源粒子的空闲或占用状态;

赋予空闲状态第一色彩信息,赋予占用状态第二色彩信息。

本申请实施例提供的资源分配的系统,至少具有如下有益效果:

当多个请求方针对同一资源提出分配请求时,处理器20直接向第一请求 方之外的请求方发出分配请求拒绝的信息。处于劣势地位的资源请求方获得资源分配请求拒绝的信息等待时间短,用户体验好。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数值处理设备的处理器2020以产生一个机器,使得通过计算机或其他可编程数值处理设备的处理器2020执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数值处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数值处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器2020(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器 (RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数值结构、程序的模块或其他数值。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数值信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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