一种应用界面显示方法及机顶盒技术

技术编号:10417844 阅读:135 留言:0更新日期:2014-09-12 10:18
本发明专利技术涉及一种应用界面显示方法及机顶盒。本发明专利技术创建环形缓存对应用提交的界面显示申请及界面显示数据首先进行中转缓存,然后通过监控不断获取环形缓存中最新的界面显示申请,调用UpdateScreen操作对最新的界面显示申请进行执行,在一次执行完毕后执行下次时只对此时最新的界面显示申请进行执行,而在上次显示过程中排队等待的界面显示申请不执行,忽略掉UpdateScreen操作显示过程中的界面显示申请,从而避免了排队等待的界面显示申请过多而需要等待很长时间才能被执行的情况,解决了排队等待的界面显示申请过多造成严重的卡顿的问题,极大保证了应用界面显示的流畅程度,大大提高用户体验满意度。

【技术实现步骤摘要】
一种应用界面显不方法及机顶盒
本专利技术涉及通信领域,尤其涉及一种应用界面显示方法及机顶盒
技术介绍
目前机顶盒在对应用界面进行显示时,主要采用直接提交与等待显示方式,SP应用直接调用驱动层的UpdateScreen操作(更新应用图像或界面到显示屏),然后等待UpdateScreen操作完成前一个界面显示后才会执行下一个界面显示。通常,UpdateScreen操作执行一次花费时间大约为50ms左右,应用一般都是直接调用此操作,每执行一次都会直接占用应用50ms左右时间。如果应用操作速度低于此时间时,不会看出迟钝现象。但如果应用界面显示进行快速变换更新,应用操作速度高于50ms时间,就会连续调用UpdateScreen操作,由于UpdateScreen操作具有独占性(同一时间只允许一个应用调用),这将导致应用界面显示出现排队调用UpdateScreen操作现象出现,即应用界面显示卡顿,导致用户操作出现响应缓慢的问题。特别在多线程应用同时调用UpdateScreen操作时,应用界面显示出现卡顿现象尤为明显和严重,从而极大影响应用界面显示的流畅程度,直接导致用户体验满意度下降。
技术实现思路
有鉴于此,有必要针对上述机顶盒应用界面显示出现卡顿的问题,提供一种应用界面显示方法。此外,还提供一种机顶盒。一种应用界面显示方法,包括如下步骤:SlO:创建环形缓存,不断缓存应用所提交的界面显示申请及界面显示数据;S20:实时监控所述环形缓存中缓存的界面显示申请;S30:获取所述环形缓存中最新的界面显示申请;S40:调用UpdateScreen操作,将最新的界面显示申请所对应的界面显示数据进行显示,此次显示执行完毕后返回步骤S30循环进行。一种机顶盒,包括:缓存创建单元,创建环形缓存,用于不断缓存应用所提交的界面显示申请及界面显示数据;驱动层,实时监控所述环形缓存中缓存的界面显示申请,获取环形缓存中最新的界面显示申请,调用UpdateScreen操作,将最新的界面显示申请所对应的界面显示数据进行显示,此次显示执行完毕后再获取此时环形缓存中最新的界面显示申请,调用UpdateScreen操作,循环进行。本专利技术应用界面显示方法及机顶盒,创建环形缓存对应用提交的界面显示申请及界面显示数据首先进行中转缓存,然后通过监控不断获取环形缓存中最新的界面显示申请,调用UpdateScreen操作对最新的界面显示申请进行执行,在一次执行完毕后执行下次时只对此时最新的界面显示申请进行执行,而在上次显示过程中排队等待的界面显示申请不执行,忽略掉UpdateScreen操作显示过程中的界面显示申请,从而避免了排队等待的界面显示申请过多而需要等待很长时间才能被执行的情况,解决了排队等待的界面显示申请过多造成严重的卡顿的问题,极大保证了应用界面显示的流畅程度,大大提高用户体验满意度。【附图说明】图1是一个实施例中的应用界面显示方法的流程图;图2是一个实施例中的机顶盒的结构图。【具体实施方式】为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。图1是一个实施例中的应用界面显示方法的流程图。如图1所示,该方法包括:SlO:创建环形缓存,不断缓存应用所提交的界面显示申请及界面显示数据。机顶盒在对应用界面进行显示时,应用会向机顶盒提交界面显示申请以及界面显示数据。原本的操作是,应用调用驱动层的UpdateScreen操作,UpdateScreen操作以串行的方式接收应用提交的界面显示申请以及界面显示数据,即UpdateScreen操作对应用提交的每个界面显示申请都要进行接收并执行,将每个界面显示申请对应的界面显示数据进行显示,对应用界面显示进行更新。由于UpdateScreen操作执行一次需要占用50ms左右的时间,如果应用在UpdateScreen操作执行过程中,即在50ms内提交多个界面显示申请,则后提交的界面显示申请就需要排队等待,等到UpdateScreen操作执行完一次后再执行后面排队的界面显示申请。例如,应用A在50ms内提出了 a、b、c三个界面显示申请,此时UpdateScreen操作首先执行a,则b和c就需要等待,等到UpdateScreen操作执行完a后,再执行b,执行完b后最后执行C。由于每一次UpdateScreen操作都要占用50ms,在这之间应用可能会提交了很多界面显示申请,尤其是多线程应用的情况下,那么排队等待的节目显示申请就会很多,需要等待很长时间才能被执行,这就会造成严重的卡顿。在该实施例中,预先创建一个环形缓存,环形缓存不断接收应用所提交的界面显示申请和界面显示数据,并进行循环缓存,对应用提交的界面显示申请和界面显示数据进行中转。应用所提交的所有界面显示申请和数据都会先提交到环形缓存中进行缓存,而非直接驱动层的调用UpdateScreen操作。这样可以高效循环存储多个节目显示申请和数据,在多个线程应用同时提交申请时,只会增加环形缓存内的界面显示申请记录个数,并不占用显示的操作时间。在进一步的实施方式中,环形缓存包括一个写指针、一个读指针和数据缓存区。写指针和读指标分别用来控制数据缓存区的写入和读取。写指针或者读指针移动到数据缓存区末尾时,均会自动回到数据缓存区的开头,进行循环。数据缓存区具有预定空间,可缓存多个界面显示申请和界面显示数据。创建环形缓存后,应用或者驱动层会访问环形缓存进行写读操作。如果有多个写操作或者读操作同时访问环形缓存,就会存在多个写操作或者读操作同时操作一片数据缓存区的情况,这就会影响数据缓冲区数据的正确性,尤其是在多线程应用的情况下。为避免这种数据异常情况发生,保证数据的正确性,步骤S1还包括:创建互斥锁,互斥锁每次只允许一个写操作或者读操作对环形缓存区进行操作,对环形缓存区进行保护。具体的,应用在向环形缓存区写入界面显示申请和数据时,首先获取互斥锁,得到对环形缓存的写入权限,互斥锁只允许获得互斥锁的应用对环形缓存进行写入,其他应用不能写入,在写入后立即释放互斥锁。在应用或者驱动层对环形缓存进行读取时,也需要首先获取互斥锁,得到对环形缓存的读取权限,在读取完毕后立即释放互斥锁。通过创建互斥锁,对环形缓存的读取操作进行限制,每次只允许一个应用对环形缓存进行访问,从而保证了环形缓存区的数据的正确性。S20:实时监控环形缓存中缓存的界面显示申请。在环形缓存不断接收应用所提交的界面显示申请和界面显示数据,并进行循环缓存后,需要实时监控环形缓存中的界面显示申请,以便实时了解环形缓存中的界面显示申请的状况。在该实施例中,步骤S20具体为:驱动层创建一个独立线程,独立线程对环形缓存进行实时监控,以及调用UpdateScreen操作执行界面显示。这样驱动层创建一个单独的独立线程,实时持续监控环形缓存的状态,监控到有界面显示申请,就会立即读取出进行处理,达到快速响应的效果;并且将调用频率高且耗时的UpdateScreen操作放入到独立线程中来执行,使应用主线程摆脱显示高耗时的困扰,提高应用界面操作和显示的流畅程度。S30:获取环形缓存中最新的界面显示申请。根据对环形缓存的实时监控,本文档来自技高网...
一种应用界面显示方法及机顶盒

【技术保护点】
一种应用界面显示方法,其特征在于,包括如下步骤:S10:创建环形缓存,不断缓存应用所提交的界面显示申请及界面显示数据;S20:实时监控所述环形缓存中缓存的界面显示申请;S30:获取所述环形缓存中最新的界面显示申请;S40:调用UpdateScreen操作,将最新的界面显示申请所对应的界面显示数据进行显示,此次显示执行完毕后返回步骤S30循环进行。

【技术特征摘要】
1.一种应用界面显示方法,其特征在于,包括如下步骤: SlO:创建环形缓存,不断缓存应用所提交的界面显示申请及界面显示数据; S20:实时监控所述环形缓存中缓存的界面显示申请; S30:获取所述环形缓存中最新的界面显示申请; S40:调用UpdateScreen操作,将最新的界面显示申请所对应的界面显示数据进行显示,此次显示执行完毕后返回步骤S30循环进行。2.根据权利要求1所述的应用界面显示方法,其特征在于,所述步骤SlO还包括:创建互斥锁,互斥锁每次只允许一个写操作或者读操作对所述环形缓存区进行操作,对所述环形缓存区进行保护。3.根据权利要求1所述的应用界面显示方法,其特征在于,所述步骤S20具体为: 驱动层创建一个独立线程,所述独立线程对所述环形缓存进行实时监控,以及调用UpdateScreen操作执行界面显示。4.根据权利要求2所述的应用界面显示方法,其特征在于,所述步骤S30具体为: 驱动层获取所述互斥锁,获取对所述环形缓存的读取权限,根据对所述环形缓存的实时监控读取所述环形缓存中最新的界面显示申请,读取后立即释放所述互斥锁,循环进行。5.根据权利要求1至4任一所述的应用界面显示方法,其特征在于,所述步骤S30还包括: 获取环形缓存中最新的界面...

【专利技术属性】
技术研发人员:杨书杰
申请(专利权)人:深圳市九洲电器有限公司
类型:发明
国别省市:广东;44

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

1