游戏数据处理方法及系统、服务器和计算机可读存储介质与流程

文档序号:17007408发布日期:2019-03-02 02:05阅读:127来源:国知局
游戏数据处理方法及系统、服务器和计算机可读存储介质与流程

本发明涉及数据处理技术领域,尤其涉及一种游戏数据处理方法及系统、服务器和计算机可读存储介质。



背景技术:

目前,在网络游戏中,客户端的绝大多数操作需要立即发送给服务器计算和仲裁,然后服务器返回结果给多个客户端显示,例如:玩家之间的即时战斗。因此,服务器指令响应时间直接决定了玩家的游戏体验。另一方面,作为游戏服务器,其同时支持的客户端的数量越多,意味着游戏的生态和收入越好。每秒钟能处理多少个客户端指令(tps)是衡量服务器并发支持的重要指标。因此,缩小指令平均响应时间、提高tps,是游戏服务器所追求的重要目标。

然而,在相关技术中,往往采用一个主逻辑线程处理所有游戏逻辑,由于单线程的处理能力有限,其总体tps受单线程处理能力限制往往不高,造成指令平均响应时间长,影响游戏用户体验。

因此,如何减小游戏逻辑处理对游戏用户体验的影响,成为目前亟待解决的技术问题。



技术实现要素:

本发明实施例提供了一种游戏数据处理方法及系统、服务器和计算机可读存储介质,旨在解决相关技术中因游戏逻辑处理的指令平均响应时间长而造成游戏用户体验较低的技术问题,能够减小游戏逻辑处理对游戏用户体验的影响,提升游戏用户的体验。

第一方面,本发明实施例提供了一种游戏数据处理方法,包括:获取来自客户端的数据处理指令;根据所述数据处理指令中的用户信息,确定所述客户端的登录用户所属的分组;在服务器的多个数据处理线程中确定所述分组对应的目标线程;通过所述目标线程执行所述数据处理指令,以对所述服务器的内存中所述用户信息对应的用户数据进行处理。

在本发明上述实施例中,可选地,在所述获取来自客户端的数据处理指令的步骤之前,还包括:根据服务器启动信息,将数据库中的所有用户数据加载到所述服务器的所述内存中。

在本发明上述实施例中,可选地,在所述获取来自客户端的数据处理指令的步骤之前,还包括:根据服务器启动信息,在所有用户中选择符合预定规则的目标用户,其中,所述预定规则为:用户登录频率大于或等于预定频率,和/或,预定时间间隔内的用户在线时长大于或等于预定时长;将所述目标用户的用户数据加载到所述服务器的所述内存中。

在本发明上述实施例中,可选地,在所述通过所述目标线程执行所述数据处理指令的步骤之前,还包括:根据所述数据处理指令中的用户信息,判断所述客户端的登录用户是否为所述目标用户;所述通过所述目标线程执行所述数据处理指令的步骤,包括:当判断结果为所述登录用户为所述目标用户时,通过所述目标线程对所述服务器的所述内存中所述登录用户的用户数据进行处理;当判断结果为所述登录用户不是所述目标用户时,将所述登录用户的用户数据加载到所述服务器的所述内存中,以通过所述目标线程在所述内存中对所述登录用户的用户数据进行处理。

在本发明上述实施例中,可选地,所述服务器中的所述数据处理线程的数量小于或等于所述服务器的物理线程的总数量的1/2。

在本发明上述实施例中,可选地,在所述获取来自客户端的数据处理指令的步骤之前,还包括:根据每个用户信息,将所述用户信息所属的用户划分至对应的所述分组中,其中,所述每个用户对应有一个分组,一个分组包括多个用户;在所述服务器的多个所述数据处理线程中,为每个所述分组设置一个对应的所述数据处理线程。

在本发明上述实施例中,可选地,所述通过所述目标线程执行所述数据处理指令的步骤,包括:判断所述数据处理指令的处理对象是否为多个用户的用户数据;当判断结果为所述数据处理指令的处理对象为所述多个用户的所述用户数据时,根据所述数据处理指令,计算对所述多个用户中每个用户的所述用户数据的处理信息;根据所述处理信息,在所述每个用户对应的所述目标线程中,对所述每个用户的所述用户数据进行处理;当判断结果为所述数据处理指令的处理对象为单个用户的所述用户数据时,对所述单个用户的所述用户数据进行处理。

第二方面,本发明实施例提供了一种游戏数据处理系统,包括:指令获取单元,用于获取来自客户端的数据处理指令;分组确定单元,用于根据所述数据处理指令中的用户信息,确定所述客户端的登录用户所属的分组;线程确定单元,用于在服务器的多个数据处理线程中确定所述分组对应的目标线程;数据处理单元,用于通过所述目标线程执行所述数据处理指令,以对所述服务器的内存中所述用户信息对应的用户数据进行处理。

在本发明上述实施例中,可选地,还包括:第一内存加载单元,用于在所述指令获取单元获取所述数据处理指令之前,根据服务器启动信息,将数据库中的所有用户数据加载到所述服务器的所述内存中。

在本发明上述实施例中,可选地,还包括:第二内存加载单元,用于在所述指令获取单元获取所述数据处理指令之前,根据服务器启动信息,在所有用户中选择符合预定规则的目标用户,其中,所述预定规则为:用户登录频率大于或等于预定频率,和/或,预定时间间隔内的用户在线时长大于或等于预定时长;将所述目标用户的用户数据加载到所述服务器的所述内存中。

在本发明上述实施例中,可选地,还包括:第一判断单元,用于在所述指令获取单元获取所述数据处理指令之前,根据所述数据处理指令中的用户信息,判断所述客户端的登录用户是否为所述目标用户;所述数据处理单元用于:当判断结果为所述登录用户为所述目标用户时,通过所述目标线程对所述服务器的所述内存中所述登录用户的用户数据进行处理;当判断结果为所述登录用户不是所述目标用户时,将所述登录用户的用户数据加载到所述服务器的所述内存中,以通过所述目标线程在所述内存中对所述登录用户的用户数据进行处理。

在本发明上述实施例中,可选地,所述服务器中的所述数据处理线程的数量小于或等于所述服务器的物理线程的总数量的1/2。

在本发明上述实施例中,可选地,还包括:分组单元,用于在所述指令获取单元获取所述数据处理指令之前,根据每个用户信息,将所述用户信息所属的用户划分至对应的所述分组中,其中,所述每个用户对应有一个分组,一个分组包括多个用户;线程分配单元,用于在所述服务器的多个所述数据处理线程中,为每个所述分组设置一个对应的所述数据处理线程。

在本发明上述实施例中,可选地,所述数据处理单元包括:第二判断单元,用于判断所述数据处理指令的处理对象是否为多个用户的用户数据;当判断结果为所述数据处理指令的处理对象为所述多个用户的所述用户数据时,根据所述数据处理指令,计算对所述多个用户中每个用户的所述用户数据的处理信息;根据所述处理信息,在所述每个用户对应的所述目标线程中,对所述每个用户的所述用户数据进行处理;当判断结果为所述数据处理指令的处理对象为单个用户的所述用户数据时,对所述单个用户的所述用户数据进行处理。

第三方面,本发明实施例提供了一种终端,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述第一方面中任一项所述的方法。

第四方面,本发明实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述第一方面中任一项所述的方法流程。

以上技术方案,针对相关技术中的因游戏逻辑处理的指令平均响应时间长而造成游戏用户体验较低的技术问题,提出了多线程处理来自客户端的数据处理指令的技术方案。具体来说,在接收到客户端的数据处理指令后,可读取数据处理指令中包含的用户信息,这里的用户信息包括但不限于客户端的登录用户的物理id信息和/或个人id信息,通过用户信息可确定用户所属游戏分区、用户登录的基站或用户个人身份等内容。由于服务器中已根据用户信息将用户划分进了一个分组,故此时根据用户信息可确定该客户端的登录用户所属的分组。

接着,由于服务器中已为每个分组设置了对应的数据处理线程,故可由此确定客户端的登录用户所属的分组所能够使用的目标线程,进而通过该目标线程对该登录用户的用户数据进行处理。在使用该目标线程时,可直接对服务器的内存中该登录用户的用户数据进行处理。也就是说,已预先将数据库中的用户数据导入了服务器的内存,故此时可直接操作内存数据。

这样,一个用户仅属于一个分组,一个分组则可具有多个用户,而一个分组内用户的用户数据又只能由一个对应的数据处理线程来处理,从而无需使用内存锁等方式即可有效避免同一个用户的用户数据被多线程并发修改,在数据处理过程中,尤其在高并发情况下,既能够减少多线程数据处理可能产生的错误,提升了数据处理的准确性,也使得多线程数据处理取消了内存锁,简化了多线程数据处理过程,大大降低了指令平均响应时间,提升了服务器的整体数据处理效率和用户体验。

【附图说明】

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1示出了本发明的一个实施例的游戏数据处理方法的流程图;

图2示出了本发明的另一个实施例的游戏数据处理方法的流程图;

图3示出了本发明的再一个实施例的游戏数据处理方法的流程图;

图4示出了本发明的一个实施例的游戏数据处理系统的框图;

图5示出了本发明的一个实施例的服务器的框图。

【具体实施方式】

为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。

应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。

图1示出了本发明的一个实施例的游戏数据处理方法的流程图。

如图1所示,本发明实施例提供了一种游戏数据处理方法,包括:

步骤102,获取来自客户端的数据处理指令。

步骤104,根据所述数据处理指令中的用户信息,确定所述客户端的登录用户所属的分组。

在接收到客户端的数据处理指令后,可读取数据处理指令中包含的用户信息,这里的用户信息包括但不限于客户端的登录用户的物理id信息和/或个人id信息,通过用户信息可确定用户所属游戏分区、用户登录的基站或用户个人身份等内容。由于服务器中已根据用户信息将用户划分进了一个分组,故此时根据用户信息可确定该客户端的登录用户所属的分组。

步骤106,在服务器的多个数据处理线程中确定所述分组对应的目标线程。

其中,所述服务器中的所述数据处理线程的数量小于或等于所述服务器的物理线程的总数量的1/2。这样一来,保证数据处理线程的数量不占用服务器的物理线程的总数量,以避免处理游戏逻辑所占用的线程数量过多而影响游戏或服务器的其他功能。

步骤108,通过所述目标线程执行所述数据处理指令,以对所述服务器的内存中所述用户信息对应的用户数据进行处理。

由于服务器中已为每个分组设置了对应的数据处理线程,故可由此确定客户端的登录用户所属的分组所能够使用的目标线程,进而通过该目标线程对该登录用户的用户数据进行处理。在使用该目标线程时,可直接对服务器的内存中该登录用户的用户数据进行处理。也就是说,已预先将数据库中的用户数据导入了服务器的内存,故此时可直接操作内存数据。

以上技术方案,一个用户仅属于一个分组,一个分组则可具有多个用户,而一个分组内用户的用户数据又只能由一个对应的数据处理线程来处理,从而无需使用内存锁等方式即可有效避免同一个用户的用户数据被多线程并发修改,在数据处理过程中,尤其在高并发情况下,既能够减少多线程数据处理可能产生的错误,提升了数据处理的准确性,也使得多线程数据处理取消了内存锁,简化了多线程数据处理过程,大大降低了指令平均响应时间,提升了服务器的整体数据处理效率和用户体验。

在本发明的一种实现方式中,在步骤102之前,可根据服务器启动信息,将数据库中的所有用户数据加载到所述服务器的所述内存中。服务器启动信息指的是在服务器启动时自动发出的已启动指示,该指示可触发将数据库中的所有用户数据加载到服务器的内存的操作。这样,可在通过所述目标线程执行所述数据处理指令时,能够在服务器的内存中直接处理任一用户的用户数据,提升了数据处理的效率。

在本发明的另一种实现方式中,在步骤102之前,为了降低对服务器内存的占用,只能将部分用户的用户数据导入服务器的内存,具体如图2所示,包括以下步骤:

步骤202,根据服务器启动信息,在所有用户中选择符合预定规则的目标用户。服务器启动信息指的是在服务器启动时自动发出的已启动指示,该指示可触发将数据库中的所有用户数据加载到服务器的内存的操作。

其中,所述预定规则为:用户登录频率大于或等于预定频率,和/或,预定时间间隔内的用户在线时长大于或等于预定时长。

由此可知,符合预定的规则的目标用户即登录频率较高和/或在线时长较长的用户,即活跃用户,用户登录频率大于或等于预定频率和预定时间间隔内的用户在线时长大于或等于预定时长这两项规则,可单一使用,也可为了准确判断用户是否为活跃用户而组合使用。

步骤204,将所述目标用户的用户数据加载到所述服务器的所述内存中。

只将活跃用户的用户数据加载到所述服务器的所述内存中,可避免因加载全部用户的用户数据至内容而造成的内存占用过多的问题,避免因内存占用过多而影响服务器的工作性能和运行速度。

步骤206,获取来自客户端的数据处理指令。

步骤208,根据所述数据处理指令中的用户信息,确定所述客户端的登录用户所属的分组。

步骤210,在服务器的多个数据处理线程中确定所述分组对应的目标线程。

步骤212,根据所述数据处理指令中的用户信息,判断所述客户端的登录用户是否为所述目标用户,当判断结果为是时,进入步骤214,当判断结果为否时,进入步骤216。

步骤214,通过所述目标线程对所述服务器的所述内存中所述登录用户的用户数据进行处理。

步骤216,将所述登录用户的用户数据加载到所述服务器的所述内存中,以通过所述目标线程在所述内存中对所述登录用户的用户数据进行处理。

由于在前只将活跃用户的用户数据导入服务器的内存,故在此需要对客户端的登录用户的性质进行判断,如果判断其为目标用户,也就是活跃用户,则说明该客户端的登录用户的用户数据已存在于服务器的内存中,可直接进行处理。否则,在客户端的登录用户不是目标用户,即非活跃用户的情况下,需要现将登录用户的用户数据加载到所述服务器的所述内存中,再在内存中对该登录用户的用户数据进行处理。

通过该技术方案,只将活跃用户的用户数据导入服务器的内存,可有效减少用户数据对内存的占用,有效保护服务器的工作性能和运行速度不受影响。

图3示出了本发明的再一个实施例的游戏数据处理方法的流程图。

如图3所示,本发明的再一个实施例的游戏数据处理方法,包括:

步骤302,根据每个用户信息,将所述用户信息所属的用户划分至对应的所述分组中,其中,所述每个用户对应有一个分组,一个分组包括多个用户。

用户信息包括但不限于客户端的登录用户的物理id信息和/或个人id信息,通过用户信息可确定用户所属游戏分区、用户登录的基站或用户个人身份等内容,进而,可将同一个游戏分区用户、同一地区的基站的用户或同一年龄段的用户划分至相同分组。

步骤304,在所述服务器的多个所述数据处理线程中,为每个所述分组设置一个对应的所述数据处理线程。

一个用户仅属于一个分组,一个分组则可具有多个用户,而一个分组内用户的用户数据又只能由一个对应的数据处理线程来处理,从而无需使用内存锁等方式即可有效避免同一个用户的用户数据被多线程并发修改,在数据处理过程中,尤其在高并发情况下,既能够减少多线程数据处理可能产生的错误,提升了数据处理的准确性,也使得多线程数据处理取消了内存锁,简化了多线程数据处理过程,大大降低了指令平均响应时间,提升了服务器的整体数据处理效率和用户体验。

步骤306,获取来自客户端的数据处理指令。

步骤308,根据所述数据处理指令中的用户信息,确定所述客户端的登录用户所属的分组。由于服务器中已根据用户信息将用户划分进了一个分组,故此时根据用户信息可确定该客户端的登录用户所属的分组。

步骤310,在服务器的多个数据处理线程中确定所述分组对应的目标线程。

步骤312,通过所述目标线程执行所述数据处理指令,以对所述服务器的内存中所述用户信息对应的用户数据进行处理。

在本发明的一种实现方式中,在步骤302中,还可判断所述数据处理指令的处理对象是否为多个用户的用户数据;当判断结果为所述数据处理指令的处理对象为所述多个用户的所述用户数据时,根据所述数据处理指令,计算对所述多个用户中每个用户的所述用户数据的处理信息;根据所述处理信息,在所述每个用户对应的所述目标线程中,对所述每个用户的所述用户数据进行处理;当判断结果为所述数据处理指令的处理对象为单个用户的所述用户数据时,对所述单个用户的所述用户数据进行处理。

也就是说,需要判断数据处理指令是否针对多个用户的用户数据进行修改等处理,如果是数据处理指令是针对多个用户的用户数据进行修改等处理,则需要先计算出对每个用户的处理信息,即对每个用户的用户数据进行怎样的修改,再在每个用户对应的目标线程中按照该用户的处理信息对该用户的用户数据进行相应的修改。由此,可保证在数据处理过程中,尤其在高并发情况下,一个用户的用户数据只由对应的目标线程进行修改,从而减少多线程数据处理可能产生的错误,提升了数据处理的准确性。

例如,在游戏中,玩家a袭击玩家b胜利后获得资源,获得资源这一指令会增加玩家a的资源并减少玩家b的资源,因此,是对玩家a和玩家b的用户数据均修改处理。对此,可进行预先计算,然后将具体的修改拆分到两个玩家自己的线程中去修改,即可以在发起攻击的玩家a的目标线程里预先计算出玩家a能抢劫玩家b的资源数量,然后在玩家a对应的目标线程中给玩家a增加对应的资源数量,同时,在玩家b对应的目标线程中给玩家b扣除对应的资源数量。

图4示出了本发明的一个实施例的游戏数据处理系统的框图。

如图4所示,本发明实施例提供了一种游戏数据处理系统400,包括:指令获取单元402,用于获取来自客户端的数据处理指令;分组确定单元404,用于根据所述数据处理指令中的用户信息,确定所述客户端的登录用户所属的分组;线程确定单元406,用于在服务器的多个数据处理线程中确定所述分组对应的目标线程;数据处理单元408,用于通过所述目标线程执行所述数据处理指令,以对所述服务器的内存中所述用户信息对应的用户数据进行处理。

该游戏数据处理系统400使用图1至图3示出的实施例中任一项所述的方案,因此,具有上述所有技术效果,在此不再赘述。游戏数据处理系统400还具有以下技术特征:

在本发明上述实施例中,可选地,还包括:第一内存加载单元,用于在所述指令获取单元402获取所述数据处理指令之前,根据服务器启动信息,将数据库中的所有用户数据加载到所述服务器的所述内存中。

在本发明上述实施例中,可选地,还包括:第二内存加载单元,用于在所述指令获取单元402获取所述数据处理指令之前,根据服务器启动信息,在所有用户中选择符合预定规则的目标用户,其中,所述预定规则为:用户登录频率大于或等于预定频率,和/或,预定时间间隔内的用户在线时长大于或等于预定时长;将所述目标用户的用户数据加载到所述服务器的所述内存中。

在本发明上述实施例中,可选地,还包括:第一判断单元,用于在所述指令获取单元402获取所述数据处理指令之前,根据所述数据处理指令中的用户信息,判断所述客户端的登录用户是否为所述目标用户;所述数据处理单元408用于:当判断结果为所述登录用户为所述目标用户时,通过所述目标线程对所述服务器的所述内存中所述登录用户的用户数据进行处理;当判断结果为所述登录用户不是所述目标用户时,将所述登录用户的用户数据加载到所述服务器的所述内存中,以通过所述目标线程在所述内存中对所述登录用户的用户数据进行处理。

在本发明上述实施例中,可选地,所述服务器中的所述数据处理线程的数量小于或等于所述服务器的物理线程的总数量的1/2。

在本发明上述实施例中,可选地,还包括:分组单元,用于在所述指令获取单元402获取所述数据处理指令之前,根据每个用户信息,将所述用户信息所属的用户划分至对应的所述分组中,其中,所述每个用户对应有一个分组,一个分组包括多个用户;线程分配单元,用于在所述服务器的多个所述数据处理线程中,为每个所述分组设置一个对应的所述数据处理线程。

在本发明上述实施例中,可选地,所述数据处理单元408包括:第二判断单元,用于判断所述数据处理指令的处理对象是否为多个用户的用户数据;当判断结果为所述数据处理指令的处理对象为所述多个用户的所述用户数据时,根据所述数据处理指令,计算对所述多个用户中每个用户的所述用户数据的处理信息;根据所述处理信息,在所述每个用户对应的所述目标线程中,对所述每个用户的所述用户数据进行处理;当判断结果为所述数据处理指令的处理对象为单个用户的所述用户数据时,对所述单个用户的所述用户数据进行处理。

图5示出了本发明的一个实施例的服务器的框图。

如图5所示,本发明的一个实施例的服务器500,包括至少一个存储器502;以及,与所述至少一个存储器502通信连接的处理器504;其中,所述存储器存储有可被所述至少一个处理器504执行的指令,所述指令被设置为用于执行上述图1至图3实施例中任一项所述的方案。因此,该服务器500具有和图1至图3实施例中任一项相同的技术效果,在此不再赘述。

另外,本发明实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述图1至图3实施例中任一项所述的方法流程。

以上结合附图详细说明了本发明的技术方案,通过本发明的技术方案,在数据处理过程中,尤其在高并发情况下,既能够减少多线程数据处理可能产生的错误,提升了数据处理的准确性,也使得多线程数据处理取消了内存锁,简化了多线程数据处理过程,大大降低了指令平均响应时间,提升了服务器的整体数据处理效率和用户体验。

应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

应当理解,尽管在本发明实施例中可能采用术语第一、第二等来描述判断单元,但这些判断单元不应限于这些术语。这些术语仅用来将判断单元彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一判断单元也可以被称为第二判断单元,类似地,第二判断单元也可以被称为第一判断单元。

取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

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