一种对象重复利用的方法和装置的制造方法

文档序号:9235337阅读:141来源:国知局
一种对象重复利用的方法和装置的制造方法
【技术领域】
[0001]本发明涉及计算机技术领域,具体涉及一种对象重复利用的方法和装置。
【背景技术】
[0002]在计算机技术领域中,快速显示给用户的体验是非常重要的。但是如何做到快速显示,是技术人员一直不断努力奋斗的方向。现有技术中,显示对象的方法一般是在内存中申请相应的资源、建立对象,然后将对象显示给用户,当不需要显示该对象时,将该对象在内存中删除,同时释放一定空间的内存。系统会将释放的内存进行回收整理。但是不断的申请和释放内存对计算机系统的性能有影响,且如果申请、释放内存的频率过快,释放的内存没有被系统及时回收,会造成没有足够的内存导致系统崩溃。
[0003]上述问题对于应用于游戏的计算机尤其突出,例如,游戏中经常有许多重复的对象,比如一个主角在一个竞技场中不断杀怪。每次有5个怪出现,杀死一个又会出来一个。当怪物出现时,游戏程序会向系统申请内存用来保存怪物,当怪物死亡会将怪物的内存释放掉,释放掉的内存系统会回收。如果不断的申请和释放内存会对游戏的性能有影响,且如果申请释放内存的频率过快,释放的内存系统没有及时的回收,则会造成没有足够的内存导致游戏崩溃。

【发明内容】

[0004]本发明实施例提供了一种对象重复利用的方法和装置,克服了现有技术中不能将释放内存及时回收导致系统崩溃的问题。
[0005]本发明实施例提供了一种对象重复利用的方法,所述方法包括:
获取取消对象显示的指令;
将所述对象设置为未使用状态;并将所述对象设置为不可见状态;其中,所述设置为未使用状态的对象用于再次显示;
根据所述设置为不可见状态,隐藏所述对象。
[0006]本发明实施例还提供了一种对象重复利用的方法,所述方法包括:
获取使用对象的指令;
获取并显示所述未使用状态的对象;其中,所述未使用状态的对象包括在取消对象显示操作时设置为未使用状态的对象。
[0007]本发明实施例还提供了一种对象重复利用的装置,所述装置包括:第一获取单元,第一设置单元,第二设置单元,隐藏单元;
所述第一获取单元,用于获取取消对象显示的指令;
所述第一设置单元,用于将所述对象设置为未使用状态;
所述第二设置单元,用于将所述对象设置为不可见状态;其中,所述设置为未使用状态的对象用于再次显示;
所述隐藏单元,用于根据所述设置为不可见状态,隐藏所述对象。
[0008]本发明实施例还提供了一种对象重复利用的装置,所述装置包括:第二获取单元,第三获取单元,和显示单元;
所述第二获取单元,用于获取使用对象的指令;
所述第三获取单元,用于获取所述未使用状态的对象;其中,所述未使用状态的对象包括在取消对象显示操作时设置为未使用状态的对象;
所述显示单元,用于显示所述未使用状态的对象。
[0009]从以上技术方案可以看出,本发明实施例通过将需要取消显示的对象设置为未使用状态,并将所述对象设置为不可见状态,该未使用状态的对象可以继续保存在内存中,等待下次需要显示时,系统会从标记为未使用状态的对象中挑选需要数量的对象进行显示,不同于现有技术中在内存中删除对象的操作,从而大大提高了显示速度,同时克服了现有技术中不能将释放内存及时回收导致系统崩溃的问题。
【附图说明】
[0010]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0011]图1为本发明实施例提供的一种对象重复利用的方法流程示意简图。
[0012]图2为本发明实施例提供的另一种对象重复利用的方法流程示意简图。
[0013]图3为本发明实施例提供的另一种对象重复利用的方法流程示意简图。
[0014]图4为本发明实施例提供的一种对象重复利用的装置示意简图。
[0015]图5为本发明实施例提供的另一种对象重复利用的装置示意简图。
【具体实施方式】
[0016]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0017]本发明实施例提供了一种对象重复利用的方法和装置,通过将取消显示的对象设置为未使用状态,并设置为不可见状态,使得该未使用状态的对象可以被再次显示,相比于现有技术将取消显示的对象从内存中删除的技术方案,克服了现有技术中不能将释放内存及时回收导致系统崩溃的问题。如下结合附图对本发明实施例进行详细说明。
[0018]如图1所示,本发明实施例提供了一种对象重复利用的方法,该方法包括:
步骤101、获取取消对象显示的指令;
需要理解的是,步骤101中所说的“取消对象显示的指令”可以是游戏中怪物或者游戏中其它事物的消亡,通常这类对象都有多次显示的特征,例如,怪物会被玩家不断杀死,但是,还会不断有新的怪物来增加游戏难度。还需要理解的是,这里的对象不限于游戏中怪物,对于需要多次显示的对象都可以利用本发明实施例提供的技术方案。
[0019]步骤102、将所述对象设置为未使用状态;并将所述对象设置为不可见状态;其中,所述设置为未使用状态的对象用于再次显示;
需要理解的是,在步骤102中将需要取消显示的对象设置为未使用状态,该未使用状态的对象可以继续保存在内存中,等待下次需要显示时,系统会从标记为未使用状态的对象中挑选需要数量的对象进行显示,不同于现有技术中在内存中删除对象的操作,从而大大提高了显示速度,同时克服了现有技术中不能将释放内存及时回收导致系统崩溃的问题。
[0020]步骤103、根据所述设置为不可见状态,隐藏所述对象。
[0021]其中,步骤103中隐藏所述对象,可以是将对象设置为不可见如隐身,或者是将对象放置在屏幕外,也可以是其它,此处不限制具体隐藏方法。
[0022]通过上述对本发明实施例提供的一种对象重复利用的方法,该方案通过将需要取消显示的对象设置为未使用状态,并将所述对象设置为不可见状态,该未使用状态的对象可以继续保存在内存中,等待下次需要显示时,系统会从标记为未使用状态的对象中挑选需要数量的对象进行显示,不同于现有技术中在内存中删除对象的操作,从而大大提高了显示速度,同时克服了现有技术中不能将释放内存及时回收导致系统崩溃的问题。
[0023]优选的,图1所述方法中,所述获取取消对象显示的指令;将所述对象设置为未使用状态之后,所述方法还包括:
步骤104,判断在内存中未使用状态的对象的数量Y是否大于设定数量N;
步骤105,如果大于N,则在内存中删除(Y-N)个对象。
[0024]通过增加上述步骤104和105,使得设备内存中未使用状态的对象的保持设定数量N,对于过多的未使用状态的对象及时删除,达到不浪费内存资源的目的。
[0025]如图2所示,本发明实施例提供了一种对象重复利用的方法,该方法与上述图1说明的方法属于相同的发明构思,所不同的是,图1说明的方法是如何取消对象显示的方案,而图2说明的是如何显示对象的方案,具体如下:
该方法包括:
步骤201,获取使用对象的指令;
与图1中所说的对象相同,也可以是指游戏中的怪物,但不限于怪物,该对象也不限制于游戏中,也可以是其它应用中的对象。
[0026]步骤202,获取并显示所述未使用状态的对象;其中,所述未使用状态的对象包括在取消对象显示操作时设置为未使用状态的对象。
[0027]通过上述对本发明实施例提供的一种对象重复利用的方法,该方案通过获取并显示所述未使用状态的对象;其中,所述未使用状态的对象包括在取消对象显示操作时设置为未使用状态的对象,不同于现有技术中在内存中删除对象的操作,在需要显示对象时需要重新建立对象,从而使得该方案大大提高了显示速度,同时克服了现有技术中不能将释放内存及时回收导致系统崩溃的问题。
[0028]优选的,步骤202中所述获取未使用状态的对象之后,显示所述未使用状态的对象之前,所述方法还包括:
对所述对象进行初始化操作。
[0029]其中,初始化操作可以包括:如初始化怪物的位置,补满血等。
[0030]优选的,步骤202中所述显示所述未使用状态的对象之后,所述方法还包括: 将显示的对象设置为正在使用状态。
[0031]优选的,步骤202中所述获取取消对象显示的指令之前,所述方法还包括:
在内存中建立N个对象,将所述N个对象设置为在屏幕上不可见,和设置为未使用状
??τ O
[0032]优选的,步骤202中所述获取使用对象的指令,具体包括:
获取使用M个对象的指令;
其中,步骤202中所述获取并显示所述未使用状态的对象之前,所述方法还包括:
判断N是否大于Μ,
如果Ν>Μ,获取并显示M个未使用状态的对象;
如果Ν〈Μ,新建(M-N)个对象,显示所述N个对象和显示新建的(M-N)个对象。
[0033]优选的,步骤202中所述获取取消对象显示的指令;将所述对象设置为未使用状态之后,所述方法还包括:
判断在内存中未使用状态的对象的数量Y是否大于N ;
如果大于N,则在内存中删除(Y-N)个对象。
[0034]如图3所示,本发明实施例提供了一种对象重复利用的方法,该方法与图2说明的方法相似,所不同的在于,图3说明的方法跟具体。该方法包括:
步骤301,在内存中建立N个对象,将所述N个对象设置为在屏幕上不可见,和设置为未使用状态;
步骤302,获取使用M个对象的指令;
步骤303,判断N是否大于Μ,
步骤304,如果Ν>Μ,获取M个未使用状态的对象;对1个未使用状态的对象进行初始化操作,显示M个未使用状态的对象;将显示的对象设置为正在使用状态;
步骤305,如果Ν〈Μ,新建(M-N)个对象,将
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1