发明内容
本发明实施例提供了一种缓存短消息的方法、装置及电信智能卡,通过将缓存属于当前应用的短消息的执行结果缓存在第一缓存区,节省了缓存区的空间,同时在第一缓存区已满时,将短消息缓存在第二缓存区,使当前应用需要的短信可以及时得到处理,确保实时获得所需信息,以便当前应用正常进行。
本发明实施例提供了一种缓存短消息的方法,该方法包括:
接收当前短消息后,判断所述当前短消息属于当前应用时,检测第一缓存区的剩余空间是否大于预定阈值;
当剩余空间大于所述预定阈值时,将所述当前短消息的执行结果存储在第一缓存区,当剩余空间不大于所述预定阈值时,将所述当前短消息存储在第二缓存区。
本发明实施例还提供了一种缓存短消息的装置,该装置包括:
检测模块,用于判断所述当前短消息属于当前应用时,检测第一缓存区的剩余空间是否大于预定阈值;
第一缓存模块,用于当剩余空间大于所述预定阈值时,将所述当前短消息的执行结果存储在第一缓存区;
第二缓存模块,用于当剩余空间不大于所述预定阈值时,将所述当前短消息存储在第二缓存区。
相应的,本发明实施例提供了一种电信智能卡,包括:缓存短消息的装置,
所述缓存短消息的装置,包括:
检测模块,用于判断所述当前短消息属于当前应用时,检测第一缓存区的剩余空间是否大于预定阈值;
第一缓存模块,用于当剩余空间大于所述预定阈值时,将所述当前短消息的执行结果存储在第一缓存区;
第二缓存模块,用于当剩余空间不大于所述预定阈值时,将所述当前短消息存储在第二缓存区。
本发明实施例提供了一种缓存短消息的方法、装置及电信智能卡,用于接收当前短消息后,判断所述当前短消息属于当前应用时,检测第一缓存区的剩余空间是否大于预定阈值;当剩余空间大于所述预定阈值时,将所述当前短消息的执行结果存储在第一缓存区,当剩余空间不大于所述预定阈值时,将所述当前短消息存储在第二缓存区。使用本发明实施例提供的缓存短消息的方法、装置及电信智能卡,通过将缓存属于当前应用的短消息的执行结果缓存在第一缓存区,节省了缓存区的空间,同时在第一缓存区已满时,将短消息缓存在第二缓存区,使当前应用需要的短信可以及时得到处理,确保实时获得所需信息,以便当前应用正常进行。
具体实施方式
下面结合各个附图对本发明实施例技术方案的主要实现原理、具体实施方式及其对应能够达到的有益效果进行详细地阐述。
为了解决现有技术存在的问题,本发明实施例提供了一种缓存短消息的方法,将电信智能卡的存储空间分为第一缓存区和第二缓存区,第一缓存区用于存储当前应用的短消息的执行结果,第二缓存区用于存储不属于当前应用的短消息,第一缓存区的空间大小可以根据应用的需要进行分配,也可以通过配置文件进行分配,如图1所示,包括以下步骤:
步骤101、接收当前短消息后,判断当前短消息属于当前应用时,检测第一缓存区的剩余空间是否大于预定阈值;
具体的,当电信智能卡运行当前应用处于忙状态时,接收到当前短消息后,需要判断该当前短消息是否属于当前应用;若属于,继续检测第一缓存区是否可以存储该当前短消息的执行结果,若不属于,则将当前短消息存储到第二缓存区。其中,判断当前短消息属于当前应用时,将前短消息的索引值与当前应用的上下文对应的索引值进行比较,比较结果为一致时判断当前短消息属于当前应用,或者使用其他标识进行判断。
判断当前短消息属于当前应用后,继续检测当前短消息的执行结果是否可以存储到第一缓存区,此时可以检测第一缓存区的剩余空间是否大于预定阈值,该预定阈值可以根据短消息的执行结果的普遍大小进行设定,也可以设定为短消息执行结果的最小值,或者其他值。
步骤102、当剩余空间大于预定阈值时,将当前短消息的执行结果存储在第一缓存区,当剩余空间不大于预定阈值时,将当前短消息存储在第二缓存区。
具体的,当前短消息的执行结果占用的空间小于当前短消息占用的空间,由此节省了缓存的空间,而且,存储执行结果有利于当前应用快速调用,因此,在第一缓存区内存储前短消息的执行结果。由于第二缓存区内按照短消息的优先级选择性删除短消息,因此在第一缓存区已满时,将当前应用的短消息存储到第二缓存区。
将当前短消息存储在第二缓存区时,需要检测第二缓存区的剩余空间是否大于当前短消息的大小;若大于,将当前短消息缓存在第二缓存区;若不大于,通过删除第二缓存区中的未接收完整的级联短消息和/或优先级小于当前短消息优先级的已缓存短消息,直到使得剩余空间大于当前短消息的大小后,将当前短消息缓存在所述第二缓存区。
可以根据级联短消息的标识,检测第二缓存区中是否存在未接收完整的级联短消息,若存在,则删除未接收完整的级联短消息;若不存在,还可以检测当前短消息的优先级是否大于第二缓存区中的已缓存短消息中优先级最低的短消息的优先级。若当前短消息的优先级大于已缓存短消息中优先级最低的短消息的优先级,删除已缓存短消息中优先级最低的短消息,当然还可以删除已缓存短消息中优先级小于当前短消息优先级的短消息;若不大于,则抛弃所述当前短消息。也就是当第二缓存区不存在未接收完整的级联短消息且已缓存的短消息的优先级均大于当前短消息的优先级,则抛弃该当前短消息。
其中,各个短消息的优先级可以由其各自对应的应用的优先级确定,也可以根据其他规则进行确定,如按照短消息的源地址设定优先级等。
通过上述描述,可以看出,使用本发明实施例提供的缓存短消息的方法,通过将缓存属于当前应用的短消息的执行结果缓存在第一缓存区,节省了缓存区的空间,同时在第一缓存区已满时,将短消息缓存在第二缓存区,使当前应用需要的短信可以及时得到处理,确保实时获得所需信息,以便当前应用正常进行。并且,当第二缓存区已满时,按照本发明实施例提供方的方式删除短消息时,由于各个短消息的优先级根据其对应的应用的优先级进行设定,有助于缓存优先级高的应用需要的短消息。
下面通过具体实施例对本发明实施例提供的数据传输的方法进行详细说明,假设将缓存空间分为A缓存区和B缓存区,两个缓存区的状态如图2所示,A缓存区中存储了短消息1、短消息3、短消息4、短消息11的执行结果,B缓存区中存储了短消息5、短消息6、短消息7、短消息8、短消息9、短消息10、短消息12、短消息13,其中短消息6、短消息7和短消息10属于同一个级联短消息。使用本发明实施例提供的方法时,如图3所示,包括以下步骤:
步骤301、接收短消息14,判断该短消息14是否属于当前应用;若属于,执行步骤302;若不属于,执行步骤303;具体的,将短消息14的索引值与当前应用的上下文对应的索引值进行比较,比较结果为一致时判断短消息14属于当前应用。
步骤302、检测A缓存区的剩余空间是否大于预定阈值;若大于,则直接处理并将执行结果存储在A缓存区;若不大于,执行步骤303;具体的,该预定阈值可以根据短消息的执行结果的普遍大小进行设定,也可以设定为短消息执行结果的最小值,或者其他值。存储短消息的执行结果有利于节省缓存的空间,以便存储更多的数据。
步骤303、检测B缓存区的剩余空间是否大于短消息14的大小;若大于,将短消息14缓存到B缓存区,否则,执行步骤304;
步骤304、检测B缓存区中是否存在未接收完整的级联短消息;若存在,删除未接收完整的级联短消息,继续执行步骤303;若不存在,执行步骤305;如图2所示,B缓存区中短消息6、短消息7和短消息10属于同一个级联短消息,而且未接收完整,因此,删除短消息6、短消息7和短消息10,缓存该短消息14。
步骤305、检测短消息14的优先级是否大于第二缓存区中的已缓存短消息中优先级最低的短消息的优先级;若大于,则删除该已缓存短消息中优先级最低的短消息,继续执行步骤303,依次类推,直到B缓存区的剩余空间大于短消息14的大小;若不大于,则直接抛弃短消息14。当然,此处还可以直接将优先级小于短消息14优先级的已缓存短消息全部删除,再继续执行步骤303。
通过上述描述,可以看出,使用本发明实施例提供的缓存短消息的方法,通过将缓存属于当前应用的短消息的执行结果缓存在第一缓存区,节省了缓存区的空间,同时在第一缓存区已满时,将短消息缓存在第二缓存区,使当前应用需要的短信可以及时得到处理,确保实时获得所需信息,以便当前应用正常进行。并且,当第二缓存区已满时,按照本发明实施例提供的方式删除短消息时,由于各个短消息的优先级根据其对应的应用的优先级进行设定,有助于缓存优先级高的应用需要的短消息。
相应的,本发明实施例还提供一种缓存短消息的装置,如图4所示,具体包括:
检测模块401,用于判断所述当前短消息属于当前应用时,检测第一缓存区的剩余空间是否大于预定阈值;
第一缓存模块402,用于当剩余空间大于所述预定阈值时,将所述当前短消息的执行结果存储在第一缓存区;
第二缓存模块403,用于当剩余空间不大于所述预定阈值时,将所述当前短消息存储在第二缓存区。
较佳的,该装置还包括:
判断模块404,用于将当前短消息的索引值与当前应用的上下文对应的索引值进行比较,比较结果为一致时判断所述当前短消息属于当前应用。
较佳的,该第二缓存模块403,包括:
空间检测子模块4031,用于检测所述第二缓存区的剩余空间是否大于当前短消息的大小;
存储子模块4032,用于当空间检测子模块4031检测所述第二缓存区的剩余空间大于当前短消息的大小时,将所述当前短消息缓存在所述第二缓存区;
删除子模块4033,用于当空间检测子模块4031检测所述第二缓存区的剩余空间不大于当前短消息的大小时,删除所述第二缓存区中的未接收完整的级联短消息和/或优先级小于所述当前短消息优先级的已缓存短消息,直到使得所述剩余空间大于所述当前短消息的大小后,将所述当前短消息缓存在所述第二缓存区。
较佳的,删除子模块4033,具体用于检测所述第二缓存区中是否存在未接收完整的级联短消息,若存在,则删除所述未接收完整的级联短消息,若不存在,则检测所述当前短消息的优先级是否大于所述第二缓存区中的已缓存短信中优先级最低的短消息的优先级。该删除子模块4033,还可以具体用于检测所述当前短消息的优先级是否大于所述第二缓存区中的已缓存短消息中优先级最低的短消息的优先级;若大于,删除已缓存短消息中优先级最低的短消息;或删除已缓存短消息中优先级小于所述当前短消息优先级的短消息,若不大于,则抛弃所述当前短消息。
通过上述描述,可以看出,使用本发明实施例提供的缓存短消息的装置,通过将缓存属于当前应用的短消息的执行结果缓存在第一缓存区,节省了缓存区的空间,同时在第一缓存区已满时,将短消息缓存在第二缓存区,使当前应用需要的短信可以及时得到处理,确保实时获得所需信息,以便当前应用正常进行。并且,当第二缓存区已满时,按照本发明实施例提供的方式删除短消息时,由于各个短消息的优先级根据其对应的应用的优先级进行设定,有助于缓存优先级高的应用需要的短消息。
本发明实施例还提供了一种电信智能卡,包括:缓存短消息的装置,该缓存短消息的装置,包括:
检测模块,用于判断所述当前短消息属于当前应用时,检测第一缓存区的剩余空间是否大于预定阈值;
第一缓存模块,用于当剩余空间大于所述预定阈值时,将所述当前短消息的执行结果存储在第一缓存区;
第二缓存模块,用于当剩余空间不大于所述预定阈值时,将所述当前短消息存储在第二缓存区。
通过上述描述,可以看出,使用本发明实施例提供的缓存短消息的方法、装置和电信智能卡,通过将缓存属于当前应用的短消息的执行结果缓存在第一缓存区,节省了缓存区的空间,同时在第一缓存区已满时,将短消息缓存在第二缓存区,使当前应用需要的短信可以及时得到处理,确保实时获得所需信息,以便当前应用正常进行。并且,当第二缓存区已满时,按照本发明实施例提供方的方式删除短消息时,由于各个短消息的优先级根据其对应的应用的优先级进行设定,有助于缓存优先级高的应用需要的短消息。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。