广播队列调整方法、装置和终端设备制造方法及图纸

技术编号:15690724 阅读:168 留言:0更新日期:2017-06-24 03:20
本发明专利技术实施例公开了一种广播队列调整方法、装置和终端设备,其中方法包括:监测到广播消息发送指令后,获取所述广播消息发送指令对应的广播队列;依次遍历所述广播队列中的每个待发送的广播消息,确定所述每个待发送的广播消息的发送进程;将发送进程不相同的广播消息移除出所述广播队列,并依据发送进程组成新的广播队列。本方案解决了现有的广播机制存在的缺陷,提高了广播处理效率,降低了系统资源消耗,使得系统稳定性增加。

Broadcast queue adjustment method, device and terminal device

The embodiment of the invention discloses a broadcast queue adjustment method, device and terminal device, wherein the method comprises the following steps: monitoring to send instructions to broadcast news, get the broadcast message send instructions corresponding to the broadcast queue; in order traversal of each of the radio broadcast messages in the queue to be sent, determine the broadcast message sending process each to be sent; the broadcast message is removed from the broadcast queue sending process is not the same, and on the basis of the sending process to form a new broadcast queue. The scheme solves the defects of the existing broadcasting mechanism, improves the broadcast processing efficiency, reduces the resource consumption of the system, and increases the stability of the system.

【技术实现步骤摘要】
广播队列调整方法、装置和终端设备
本专利技术实施例涉及计算机技术,尤其涉及一种广播队列调整方法、装置和终端设备。
技术介绍
广播是一种被广泛运用的在应用程序之间进行信息传输的机制,以安卓操作系统为例,其通过广播(Broadcast)来实现应用程序间数据的传输和共享。典型的,如安卓自带的短信、电话等广播。在安卓系统中,广播发送者通过调用sendBroadcast函数进行广播消息的发送,广播接收者通过调用registerReceiver函数在管理模块中进行广播接收器(BroadcastReceiver)的注册,并定义自身感兴趣的广播消息,由此来实现对相应的广播消息的接收。现有技术中,广播的处理机制存在缺陷,使得广播处理效率低下,系统资源消耗过多且稳定性差。
技术实现思路
本专利技术提供了一种广播队列调整方法、装置和终端设备,提高了广播处理效率,降低了系统资源消耗,增加了系统的稳定性。第一方面,本专利技术实施例提供了一种广播队列调整方法,包括:监测到广播消息发送指令后,获取所述广播消息发送指令对应的广播队列;依次遍历所述广播队列中的每个待发送的广播消息,确定所述每个待发送的广播消息的发送进程;将发送进程不相同的广播消息移除出所述广播队列,并依据发送进程组成新的广播队列。第二方面,本专利技术实施例还提供了一种广播队列调整装置,包括:获取模块,用于监测到广播消息发送指令后,获取所述广播消息发送指令对应的广播队列;遍历模块,用于依次遍历所述广播队列中的每个待发送的广播消息;确定模块,用于确定所述每个待发送的广播消息的发送进程;调整模块,用于将发送进程不相同的广播消息移除出所述广播队列,并依据发送进程组成新的广播队列。第三方面,本专利技术实施例还提供了一种终端设备,包括:处理器、存储器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:监测到广播消息发送指令后,获取所述广播消息发送指令对应的广播队列;依次遍历所述广播队列中的每个待发送的广播消息,确定所述每个待发送的广播消息的发送进程;将发送进程不相同的广播消息移除出所述广播队列,并依据发送进程组成新的广播队列。本专利技术实施例提供的技术方案,解决了现有的广播机制存在的缺陷,提高了广播处理效率,降低了系统资源消耗,使得系统稳定性增加。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:图1是本专利技术实施例提供的一种广播队列调整方法的流程图;图2是本专利技术实施例提供的另一种广播队列调整方法的流程图;图3是本专利技术实施例提供的另一种广播队列调整方法的流程图;图4是本专利技术实施例提供的一种广播队列调整装置的结构框图;图5是本专利技术实施例提供的一种终端设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。图1是本专利技术实施例提供的一种广播队列调整方法的流程图,本实施例可适用于广播发送过程中,对广播队列进行调整的过程,该方法可以由本专利技术实施例提供的终端设备来执行,该终端设备的广播队列调整装置可采用软件和/或硬件的方式实现,如图1所示,本实施例提供的具体方案如下:S101、监测到广播消息发送指令后,获取所述广播消息发送指令对应的广播队列。在广播处理过程中,广播发送者的服务进程通过调用广播发送函数(如sendBroadcast函数)将广播消息发送至管理模块(如ActivityManagerService,活动管理服务),管理模块接收到该广播消息后将其放入广播发送队列,管理模块通过进程通信机制(如Binder进程通信机制)将广播发送队列中的广播消息发送至符合接收条件的广播接收者。广播机制中,广播消息指的是系统或者应用程序在运行过程中发送的,用于系统和/或应用程序之间传输的信息,示例性的,广播消息可以是系统启动广播消息、短信类广播消息、电话类广播消息或者三方应用类广播消息等。在一个实施例中,以计数器应用程序作为广播发送者为例,其发送广播消息至管理模块的方式可采用如下表示://创建一个广播消息Intentintent=newIntent(BROADCAST_COUNTER_ACTION);//传递计数器参数及对应的计数值intent.putExtra(COUNTER_VALUE,counter);//发送广播消息sendBroadcast(intent)在一个实施例中,管理模块接收广播发送者发送的广播消息后形成广播队列,对广播发送队列中的广播消息依次进行发送。广播发送者发送广播消息的过程和广播接收者接收广播消息的过程是异步操作过程,广播发送者和广播接收者通过管理模块实现低耦合的关系匹配。其中,根据广播发送方式的不同可将广播消息分为普通广播消息和有序广播消息。普通广播消息被管理模块发出后,广播接收者对该广播消息的接收是无序的,而有序广播消息被管理模块发出后,广播接收者按照顺序先后依次接收,即第一个广播接收者接收到广播消息并处理完毕后,第二个广播接收者才能开始接收并处理该广播消息,依次类推,本实施例公开的广播队列调整方法可限定在有序广播方式中。在一个实施例中,当监测到广播消息的发送指令后,获取所述广播消息发送指令对应的广播队列。其中,该广播消息为管理模块中维护的广播队列中的广播消息,当广播消息发送时,获取该广播消息所在的广播队列。示例性的,可依据该广播消息的名称(如BROADCAST_COUNTER_ACTION)进行广播队列查找,确定包含该广播消息名称的队列为对应的广播队列。S102、依次遍历所述广播队列中的每个待发送的广播消息,确定所述每个待发送的广播消息的发送进程。在一个实施例中,对广播队列中当前待发送的广播消息进行遍历,并确定该广播消息对应的发送进程。进程指系统中的程序关于某数据集合上的运行活动,是系统进行资源分配和调度的基本单位,是系统结构的组成基础,为应用程序的基本执行实体。示例性的,该发送进程可以是广播发送者发送广播消息时的进程,还可以是管理模块发送该广播消息至广播接收者并进行处理时占用的进程。在一个实施例中,确定所述每个待发送的广播消息的发送进程的过程可以是依据广播消息的名称(如BROADCAST_COUNTER_ACTION)确定对应的执行该广播消息的进程ID号。S103、将发送进程不相同的广播消息移除出所述广播队列,并依据发送进程组成新的广播队列。在一个实施例中,依据发送进程组成新的广播队列包括:将发送进程一致的广播消息组成新的广播队列。示例性的,可以依据进程ID号,将广播消息发送进程对应的进程ID不相同的广播消息移除出广播队列,再依据进程ID划分广播队列,每个新组成的广播队列中的广播消息的发送进程保持一致。在一个实施例中,在所述将发送进程一致的广播消息组成新的广播队列之后,还包括:同时开始发送所述广播消息发送指令对应的广播队列中的广播消息和所述新的广播队列中的广播消息。该实施例中,原有广播队列和新建广播队列中的广播消息的发送进程不同,通过同时发送不同发送进程的广播消息实现了有序广播队列中广播消息的并行发送,使得本文档来自技高网...
广播队列调整方法、装置和终端设备

【技术保护点】
一种广播队列调整方法,其特征在于,包括:监测到广播消息发送指令后,获取所述广播消息发送指令对应的广播队列;依次遍历所述广播队列中的每个待发送的广播消息,确定所述每个待发送的广播消息的发送进程;将发送进程不相同的广播消息移除出所述广播队列,并依据发送进程组成新的广播队列。

【技术特征摘要】
1.一种广播队列调整方法,其特征在于,包括:监测到广播消息发送指令后,获取所述广播消息发送指令对应的广播队列;依次遍历所述广播队列中的每个待发送的广播消息,确定所述每个待发送的广播消息的发送进程;将发送进程不相同的广播消息移除出所述广播队列,并依据发送进程组成新的广播队列。2.根据权利要求1所述的方法,其特征在于,所述依据发送进程组成新的广播队列包括:将发送进程一致的广播消息组成新的广播队列。3.根据权利要求2所述的方法,其特征在于,在所述将发送进程一致的广播消息组成新的广播队列之后,还包括:同时开始发送所述广播消息发送指令对应的广播队列中的广播消息和所述新的广播队列中的广播消息。4.根据权利要求1-3中任一项所述的方法,其特征在于,所述依次遍历所述广播队列中的每个待发送的广播消息包括:依次遍历预设长度下的所述广播队列中的每个待发送的广播消息。5.根据权利要求1-3中任一项所述的方法,其特征在于,在所述依据发送进程组成新的广播队列之后,还包括:确定发送新增的广播消息的发送进程,如果存在和所述新增的广播消息的发送进程一致的广播队列,则将所述新增的广播消息添加至发送进程一致的广播队列中;如果不存在和所述新增的广播消息的发送进程一致的广播队列,则创建新的广播队列,并将所述新增的广播消息添加至新创建的广播队列中。6.一种广播队列调整装置,其特征在于,包括:获取模块,用于监测到广播消息发送指令后,获取所述广播消息发送指令对应的广播队列;遍历模块,用于依次遍历所述广播队列中的每个待发送的广播消息;确定模块,用于确定所述...

【专利技术属性】
技术研发人员:裴润升付亮晶吴汝煜林志泳张俊
申请(专利权)人:广东欧珀移动通信有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1