CN115550735A - 一种显示设备和媒资更新方法 - Google Patents

一种显示设备和媒资更新方法 Download PDF

Info

Publication number
CN115550735A
CN115550735A CN202211003291.0A CN202211003291A CN115550735A CN 115550735 A CN115550735 A CN 115550735A CN 202211003291 A CN202211003291 A CN 202211003291A CN 115550735 A CN115550735 A CN 115550735A
Authority
CN
China
Prior art keywords
target
queue
memory
task
updating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211003291.0A
Other languages
English (en)
Inventor
栾春华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Jukanyun Technology Co ltd
Original Assignee
Qingdao Jukanyun Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qingdao Jukanyun Technology Co ltd filed Critical Qingdao Jukanyun Technology Co ltd
Priority to CN202211003291.0A priority Critical patent/CN115550735A/zh
Publication of CN115550735A publication Critical patent/CN115550735A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种显示设备和媒资更新方法,涉及电子设备技术领域。其中,该显示设备包括:控制器,被配置为:通过通信器接收服务器发送的媒资更新任务列表;获取目标更新任务对应的目标媒资专辑标识;获取内存队列的线程数量,并根据线程数量划分内存队列得到多个内存子队列;根据目标媒资专辑标识,从多个内存子队列中确定目标内存子队列;通过通信器从服务器获取目标更新任务对应的媒资,并将媒资缓存至目标内存子队列,以由目标内存子队列对应的目标线程执行目标更新任务,更新媒资。本公开实施例用于解决现有更新媒体资源的失败率高的问题。

Description

一种显示设备和媒资更新方法
技术领域
本公开涉及电子设备技术领域,尤其涉及一种显示设备和媒资更新方法。
背景技术
智能电视在家居生活中具有重要的作用,为满足用户通过智能电视观看电视节目、电影等媒体资源的娱乐需求,通常情况下,智能电视从服务端获取媒体资源的更新任务,由多线程并行处理更新任务,实现媒体资源的快速更新。多线程并行处理时,同一个媒体资源的更新任务中存在任务执行的先后顺序,多个线程同时处理同一个媒体资源的更新任务时,难以保证执行同一个媒体资源的更新任务的先后顺序,举例而言,第一线程和第二线程同时执行同一个媒体资源的更新任务(包括任务一、任务二,且设定先执行任务一再执行任务二),如果第一线程因为网络波动暂停执行任务一,而第二线程未受到影响正常执行任务二,那么针对这一个媒体资源的更新任务,第二线程的执行结果会被第一线程的执行结果覆盖,使得媒体资源的更新不准确,进而造成更新媒体资源的失败率高。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种显示设备和媒资更新方法,可以提升了媒体资源更新的准确性和成功率。
为了实现上述目的,本公开实施例提供的技术方案如下:
第一方面,本公开提供一种显示设备,该显示设备包括:
控制器,被配置为:通过通信器接收服务器发送的媒资更新任务列表,媒资更新任务列表中包括多个更新任务;
获取目标更新任务对应的目标媒资专辑标识,目标更新任务为多个更新任务中的任一个;
获取内存队列的线程数量,并根据线程数量划分内存队列得到多个内存子队列;
根据目标媒资专辑标识,从多个内存子队列中确定目标内存子队列;
通过通信器从服务器获取目标更新任务对应的媒资,并将媒资缓存至目标内存子队列,以由目标内存子队列对应的目标线程执行目标更新任务,更新媒资。
第二方面,本公开提供一种媒资更新方法,该方法包括:
通过通信器接收服务器发送的媒资更新任务列表,媒资更新任务列表中包括多个更新任务;
获取目标更新任务对应的目标媒资专辑标识,目标更新任务为多个更新任务中的任一个;
获取内存队列的线程数量,并根据线程数量划分内存队列得到多个内存子队列;
根据目标媒资专辑标识,从多个内存子队列中确定目标内存子队列;
通过通信器从服务器获取目标更新任务对应的媒资,并将媒资,缓存至目标内存子队列,以由目标内存子队列对应的目标线程执行目标更新任务,更新媒资。
第三方面,本公开提供一种计算机可读存储介质,包括:计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如第二方面或其任意一种可选的实施方式的媒资更新方法。
第四方面,本公开提供一种计算机程序产品,包括:当计算机程序产品在计算机上运行时,使得计算机实现如第二方面或其任意一种可选的实施方式的媒资更新方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开提供一种显示设备和媒资更新方法,其中,该显示设备包括:控制器,控制器通过通信器接收服务器发送的媒资更新任务列表,然后获取目标更新任务对应的目标媒资专辑标识,获取内存队列的线程数量,并根据线程数量划分内存队列得到多个内存子队列,再根据目标媒资专辑标识从多个内存子队列中确定目标子队列,进一步的通过通信器从服务器获取目标更新任务对应的媒资,并将媒资缓存至目标内存子队列,以由目标内存子队列对应的目标线程执行目标更新任务,更新媒资。从而将媒资专辑标识相同的更新任务缓存至同一内存子队列,并由同一内存队列对应的同一目标线程执行该更新任务,使得多线程并行处理的同时保证每个更新任务执行的先后顺序,提升了媒资更新的准确性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有的媒资更新方法的示意图;
图2为本公开实施例中的显示设备与控制装置之间的操作场景示意图;
图3为本公开实施例提供的控制装置100的配置框图;
图4为本公开实施例所述一种显示设备的硬件配置框图;
图5为本公开实施例所述显示设备中软件配置示意图;
图6为本公开实施例所述的一种媒资更新方法的流程示意图;
图7为本公开实施例提供的内存队列的示意图一;
图8为本公开实施例提供的内存队列的示意图二;
图9为本公开实施例提供的目标线程执行目标更新任务的示意图一;
图10为本公开实施例提供的目标线程执行目标更新任务的示意图二;
图11为本公开实施例提供的目标线程执行目标更新任务的示意图三;
图12为本公开实施例中提供的更新媒资的示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本公开中的具体含义。此外,在本公开的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
目前,智能电视从服务端获取媒体资源的更新任务,由多线程并行处理更新任务,实现媒体资源的快速更新。多线程并行处理时,同一个媒体资源的更新任务中存在任务执行的先后顺序,多个线程同时处理同一个媒体资源的更新任务时,难以保证执行同一个媒体资源的更新任务的先后顺序,举例而言,第一线程和第二线程同时执行同一个媒体资源的更新任务(包括任务一、任务二,且设定先执行任务一再执行任务二),如果第一线程因为网络波动暂停执行任务一,而第二线程未受到影响正常执行任务二,那么针对这一个媒体资源的更新任务,第二线程的执行结果会被第一线程的执行结果覆盖,使得媒体资源的更新不准确,进而造成更新媒体资源的失败率高。
示例性的,如图1所示,图1为现有的媒资更新方法的示意图,图中包括内队列101、内存队列101中包括下载队列11、格式化队列12、输出队列13。智能电视接收到媒体资源的更新任务之后,多线程并行处理,由下载队列11对应的第一线程11A和第二线程11B同时从下载队列11中提取媒体资源的相关数据,然后调用接口从服务器400下载媒体资源的详细信息。更新任务中包括任务一:更新媒体资源的状态为在线,以及任务二:更新媒体资源的状态为下线,且设定先执行任务一,再执行任务二。在由第三线程12A和第四线程12B同时从格式化队列12中提取媒体资源的详细信息执行格式化任务的过程中,如果第三线程12A执行任务一时,由于网络波动而暂停执行;第四线程12B并未受到影响成功执行任务二,在第三线程12A恢复正常执行任务一之后,媒体资源当前的状态为在线,但是媒体资源的状态应该更新为下线,这导致智能电视端和服务器端的媒体资源更新状态不同,更新失败。
为解决上述技术问题,本公开提供一种显示设备和媒资更新方法,其中,该显示设备包括:控制器,控制器通过通信器接收服务器发送的媒资更新任务列表,然后获取目标更新任务对应的目标媒资专辑标识,获取内存队列的线程数量,并根据线程数量划分内存队列得到多个内存子队列,再根据目标媒资专辑标识从多个内存子队列中确定目标子队列,进一步的通过通信器从服务器获取目标更新任务对应的媒资,并将媒资缓存至目标内存子队列,以由目标内存子队列对应的目标线程执行目标更新任务,更新媒资。从而将媒资专辑标识相同的更新任务缓存至同一内存子队列,并由同一内存队列对应的同一目标线程执行该更新任务,使得多线程并行处理的同时保证每个更新任务执行的先后顺序,提升了媒资更新的准确性。
如图2所示,图2为本公开实施例中的显示设备与控制装置之间的操作场景示意图。
在一些实施例中,用户可通过智能设备300或控制装置100操作显示设备200,显示设备200与服务器400进行数据通信。
如图2所示,以通过智能设备300操作显示设备200为例,对本公开提供的显示设备的应用场景进行说明。一种应用场景中,用户通过智能设备300开启先显示设备200。
在一些实施例中,控制装置100可以是遥控器,遥控器和终端设备的通信包括红外协议通信或蓝牙协议通信,及其他短距离通信方式,通过无线或有线方式来控制显示设备200。用户可以通过遥控器上按键、语音输入、控制面板输入等输入用户指令,来控制显示设备200。
图3为本公开实施例提供的控制装置100的配置框图。如图3所示,控制装置100包括控制器110、通信接口130、用户输入或输出接口140、存储器、供电电源。控制装置100可接收用户的输入操作指令,且将操作指令转换为显示设备200可识别和响应的指令,起用用户与显示设备200之间交互中介作用。通信接口130用于和外部通信,包含WIFI芯片,蓝牙模块,NFC或可替代模块中的至少一种。用户输入/输出接口140包含麦克风,触摸板,传感器,按键或可替代模块中的至少一种。
在一些实施例中,显示设备200还可以不使用上述的智能设备或控制设备接收指令,而是通过触摸或者手势等接收用户的控制。
在一些实施例中,显示设备200还可以采用除了控制装置100和智能设备300之外的方式进行控制,例如,可以通过显示设备200设备内部配置的获取语音指令的模块直接接收用户的语音指令控制,也可以通过显示设备200设备外部设置的语音控制设备来接收用户的语音指令控制。
在一些实施例中,可允许显示设备200通过局域网(LAN)、无线局域网(WLAN)和其他网络进行通信连接。服务器400可以向显示设备200提供各种内容和互动。服务器400可以是一个集群,也可以是多个集群,可以包括一类或多类服务器。或者是云服务器。上述仅是一种示例,本实施例中对此不作任何限定。
图4为本公开实施例所述一种显示设备的硬件配置框图。如图4所示显示设备包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、显示器260、音频输出接口270、存储器、供电电源、用户接口280中的至少一种。控制器包括中央处理器,视频处理器,音频处理器,图形处理器,随机存取存储器(Random Access Memory,RAM),只读存储器(Read-Only Memory,ROM),用于输入/输出的第一接口至第n接口。显示器260可为液晶显示器、OLED显示器、触控显示器以及投影显示器中的至少一种,还可以为一种投影装置和投影屏幕。调谐解调器210通过有线或无线接收方式接收广播电视信号,以及从多个无线或有线广播电视信号中解调出音视频信号,如以及电子节目指南(Electrical Program Guide,EPG)数据信号。检测器230用于采集外部环境或与外部交互的信号。控制器250和调谐解调器210可以位于不同的分体设备中,即调谐解调器210也可在控制器250所在的主体设备的外置设备中,如外置机顶盒等。
在一些实施例中,控制器250,通过存储在存储器上中各种软件控制程序,来控制显示设备的工作和响应用户的操作。控制器250控制显示设备200的整体操作。用户可在显示器260上显示的图形用户界面(Graphic User Interface,GUI)输入用户命令,则用户输入接口通过图形用户界面接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。
在一些实施例中,“用户界面”,是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面,是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、微件(Web widget,Widget)等可视的界面元素中的至少一种。
在一些实施例中,控制器包括中央处理器(Central Processing Unit,CPU),视频处理器,音频处理器,图形处理器(Graphics Processing Unit,GPU),RAM Random AccessMemory,RAM),ROM(Read-Only Memory,ROM),数字信号处理器(Digital SignalProcessing,DSP)用于输入/输出的第一接口至第n接口,通信总线(Bus)等中的至少一种。
CPU处理器。用于执行存储在存储器中操作系统和应用程序指令,以及根据接收外部输入的各种交互指令,来执行各种应用程序、数据和内容,以便最终显示和播放各种音视频内容。CPU处理器,可以包括多个处理器。如,包括一个主处理器以及一个或多个子处理器。
本公开实施例提供一种显示设备,该显示设备包括:
控制器250,被配置为:通过通信器接收服务器发送的媒资更新任务列表,媒资更新任务列表中包括多个更新任务;获取目标更新任务对应的目标媒资专辑标识,目标更新任务为多个更新任务中的任一个;获取内存队列的线程数量,并根据线程数量划分内存队列得到多个内存子队列;根据目标媒资专辑标识,从多个内存子队列中确定目标内存子队列;通过通信器从服务器获取目标更新任务对应的媒资,并将媒资缓存至目标内存子队列,以由目标内存子队列对应的目标线程执行目标更新任务,更新媒资。
上述显示设备基于多线程并行处理的模式,根据服务器下发的媒资更新任务列表进行媒资更新,过程中根据目标更新任务对应的目标媒资专辑标识,从根据内存队列的线程数量划分得到的多个内存子队列中确定目标内存子队列,进而将需要更新媒资缓存至目标子队列以由目标子队列对应的目标线程执行目标更新任务,实现在多线程并行处理多个媒资更新任务的情况下,同一个线程处理同一个媒资更新任务,准确、高效,保证了显示设备和服务器媒资更新的一致性,提升了媒资更新的成功率。
一些实施例中,更新任务包括:下载任务、格式化任务、输出任务;
控制器250,获取内存队列的线程数量,并根据线程数量划分内存队列得到多个内存子队列,被配置为:针对更新任务将内存队列划分为第一内存队列、第二内存队列、第三内存队列,其中,第一内存队列对应下载任务,第二内存队列对应格式化任务,第三内存队列对应输出任务;
根据第一内存队列的线程数量划分第一内存队列得到多个第一内存子队列,根据第二内存队列的线程数量划分第二内存队列得到多个第二内存子队列,根据第三内存队列的线程数量划分第三内存队列得到多个第三内存子队列。
一些实施例中,控制器250,通过通信器从服务器获取目标更新任务对应的媒资,并将媒资,缓存至目标内存子队列,以由目标内存子队列对应的目标线程执行目标更新任务,更新媒资,被配置为:从服务器获取目标更新任务对应的媒资;将媒资缓存至目标媒资专辑标识对应的第一目标内存子队列,以由第一目标内存子队列对应的第一目标线程执行下载任务,得到媒资的详情信息;根据目标媒资专辑标识从多个第二内存子队列中确定第二目标内存子队列,并将媒资的详情信息缓存至第二目标内存子队列,以由第二目标内存子队列对应的第二目标线程执行格式化任务,得到媒资的格式化数据;根据目标媒资专辑标识从多个第三内存子队列中确定第三目标内存子队列,并将媒资的格式化数据缓存至第三目标内存子队列,以由第三目标内存子队列对应的第三目标线程执行输出任务得到更新的媒资,将更新的媒资存储至数据库。
一些实施例中,控制器250,获取内存队列的线程数量之前,还被配置为:检测内存队列中第一线程的执行持续时长,第一线程为内存队列的线程中的至少一个线程;在执行持续时长大于或等于第一预设时长的情况下,增加线程数量;在执行持续时长小于或等于第二预设时长的情况下,减少线程数量;在执行时长大于第二预设时长,且小于第一预设时长的情况下,保持线程数量。
一些实施例中,控制器250,在执行持续时长大于或等于第一预设时长的情况下,增加线程数量,被配置为:在执行持续时长大于或等于第一预设时长,且资源使用率小于或等于预设阈值的情况下,增加线程数量;
其中,资源使用率包括下述至少一项:中央处理器使用率、内存使用率、磁盘使用率、网络使用率。
一些实施例中,控制器250,获取目标更新任务对应的媒资专辑标识,被配置为:在目标更新任务不存在对应的媒资专辑标识的情况下,利用随机数生成队列索引值,以作为目标更新任务对应的媒资专辑标识。
一些实施例中,控制器250,更新媒资之后,还被配置为:生成更新通知,以通知显示设备中除控制器250之外的其他组件或装置媒资已更新;和/或,清空目标内存子队列的缓存,释放目标内存子队列,以执行除目标更新任务之外的其他更新任务。
一些实施例中,媒资更新任务列表中包括不同媒资专辑的更新任务,和/或,相同媒资专辑的不同更新任务。
图5为本公开实施例所述显示设备中软件配置示意图,如图5所示,将系统分为四层,从上至下分别为应用程序(Applications)层(简称“应用层”),应用程序框架(Application Framework)层(简称“框架层”),安卓运行时(Android runtime)和系统库层(简称“系统运行库层”),以及内核层。内核层至少包含以下驱动中的至少一种:音频驱动、显示驱动、蓝牙驱动、摄像头驱动、行动热点(WIFI)驱动、通用串行总线(Universal SerialBus,USB)驱动、高清多媒体接口(High Definition Multimedia Interface,HDMI)驱动、传感器驱动(如指纹传感器,温度传感器,压力传感器等)、以及电源驱动等。
需要说明的是,本公开实施例所述的一种媒资更新方法的保护范围不限于本实施例列举的步骤执行顺序,凡是根据本公开的原理所做的现有技术的步骤增减、步骤替换所实现的方案都包括在本公开的保护范围内。
如图6所示,图6为本公开实施例所述的一种媒资更新方法的流程示意图,该方法包括以下步骤S601~S605:
S601、通过通信器接收服务器发送的媒资更新任务列表。
其中,媒资更新任务列表中包括多个更新任务。媒资包括视频、音频、文字、图片等不同类型,媒资更新任务中携带媒资的元数据,包括标签、版权信息、播放地址等,本公开在此不做限定。
媒资列表中包括的多个更新任务可以是不同媒资专辑的更新任务,和/或,相同媒资专辑的不同更新任务,其中媒资专辑是否相同,根据媒资专辑标识确定。若更新任务对应的媒资专辑标识匹配,则这些更新任务为同一媒资专辑的更新任务,若更新任务对应的媒资专辑标识不匹配,则更新任务为不同媒资专辑的更新任务。
一些实施例中,每个媒资更新任务包括:下载任务、格式化任务、输出任务。上述三类任务依赖的外部环境和具体操作各有特点,下载任务指示显示设备从服务器下载媒资的详情信息,主要依赖第三方接口;格式化任务指示将媒资的详情信息转换为格式化数据,主要为计算操作包括但不限于图片下载校验计算、数据模型映射计算,其中,格式化数据是显示设备支持的数据格式;输出任务指示将格式化数据存储至数据库,主要依赖显示设备内部的数据存储系统。
S602、获取目标更新任务对应的目标媒资专辑标识。
其中,目标更新任务为多个更新任务中的任一个。
媒资专辑标识包括媒资专辑身份识别码(Identity Document,ID),本公开对此不做限定。
实际应用中,存在目标更新任务中未携带媒资专辑标识的情况,为保证同一目标更新任务由同一链路执行,本公开实施例提供一种实施方式,利用随机数生成队列索引值,该队列索引值可唯一标识目标更新任务,可将该队列索引值作为目标更新任务的目标媒资专辑标识。
S603、获取内存队列的线程数量,并根据线程数量划分内存队列得到多个内存子队列。
一些实施例中,内存队列根据更新任务(下载任务、格式化任务、输出任务)划分为第一内存队列、第二内存队列、第三内存队列,其中,第一内存队列对应下载任务,第二内存队列对应格式化任务、第三队列对应输出任务。如图7所示,图7为本公开实施例提供的内存队列的示意图一,图中包括内存队列701,内存队列701被划分为第一内存队列71、第二内存队列72、第三内存队列73。
在内存队列按照任务进行划分得到第一内存队列、第二内存队列、第三内存队列之后,步骤S603包括:获取第一内存队列的线程数量,按照第一内存队列的线程数量划分第一内存队列得到多个第一内存子队列;获取第二内存队列的线程数量,按照第二内存队列的线程数量划分第二内存队列得到多个第二内存子队列;获取第三内存队列的线程数量,按照第三内存队列的线程数量划分第三内存队列得到多个第三内存子队列。
其中,第一内存队列的线程数量、第二内存队列的线程数量、第三内存队列的线程数量可以由技术人员预先设置。
示例性的,如图8所示,图8为本公开实施例提供的内存队列的示意图二。图8中示出内存队列701、第一内存队列71、第二内存队列72、第三内存队列73。预先设置第一内存队列71的线程数量为m个、第二内存队列72的线程数量为n个、第三内存队列73的线程数量为s个,则根据上述内存队列的线程数量进行划分后,得到m个第一内存子队列81、n个第二内存子队列82、s个第三内存子队列83。
一些实施例中,第一内存队列的线程数量、第二内存队列的线程数量、第三内存队列的线程数量还可以根据线程的执行持续时长来进行增减。本公开实施例中提供一种实施方式,在获取内存队列的线程数量之前,检测内存队列中第一线程的执行持续时长,其中,第一线程为内存队列的线程中的至少一个线程,进而根据执行持续时长确定是否增加线程数量。然后,判断执行持续时长是否大于或等于第一预设时长,第一预设时长是预先设置的用于指示内存队列的线程持续执行任务的最大时长,通常设置可以设置为五分钟。
在执行持续时长大于或等于第一预设时长的情况下,表示第一线程处于长时间执行任务的状态,线程执行压力较大,需要增加线程数量以分担线程的工作,因此,在执行持续时长大于或等于第一预设时长的情况下,增加内存队列的线程数量,具体的,建立执行持续时长和线程数量的对应关系,根据该对应关系,增加内存队列的线程数量。
在执行持续时长小于第一预设时长的情况下,判断执行持续时长是否小于或等于第二预设时长,第二预设时长是预先设置的用于指示内存队列的线程持续执行任务的最小时长,可以理解的是,第二预设时长小于第一预设时长。在执行持续时长小于或等于第二预设时长的情况下,表示内存队列的第一线程处于短时间快速执行工作任务的状态,为保证任务准确执行,可以将任务执行的速度控制在合适的范围,可以通过减少内存队列的线程数量的方式,使得同一线程处理的任务量增多,减缓任务执行速度。因此,在执行持续时长小于或等于第二预设时长的情况下,减少内存队列的线程数量。
在执行持续时长大于第二预设时长,且小于第一预设时长的情况下,内存队列的线程执行任务所消耗的时间在预设范围内,执行任务的速度适宜,可以保持内存队列的线程数量。
上述根据线程的执行持续时长增减线程数量的方式,适用于第一内存队列、第二内存队列、第三内存队列。示例性的,检测第二内存队列中任意至少一个线程的持续执行时长,在执行持续时长大于或等于第一预设时长的情况下,增加第二内存队列中线程的数量;在执行持续时长小于或等于第二预设时长的情况下,减少第二内存队列中线程的数量;在执行持续时长大于第二预设时长,且小于第一预设时长的情况下,保持第二内存队列中线程的数量。
通过确定内存队列中任意的至少一个线程的执行持续时长,判断执行持续时长处于预设时长范围内,也即判断执行持续时长是否大于或等于第一预设时长,和/或,小于或等于第二预设时长。若处于预设时长范围内,则保持内存队列的线程数量,若小于或等于预设时长范围的最小值(第二预设时长),则减少线程数量;若大于或等于预设时长范围的最大值(第一预设时长),则增加线程数量,从而实时地调整线程数量,以提升更新任务的执行效果。
一些实施例中,内存队列的线程数量可以根据显示设备的资源使用率进行调整。其中资源使用率是指显示设备所配置的存储资源、网络资源等其他资源的使用率。资源使用率包括以下至少一项:中央处理器使用率、内存使用率、磁盘使用率、网络使用率。资源使用率并不仅限于上述四项,本公开对此不做限定。
本公开实施例提供一种实施方式,在获取内存队列的线程数量之前,检测显示设备的资源使用率,以判断显示设备的存储资源、网络资源的余量是否支持增加线程数量。在资源使用率小于或等于预设阈值的情况下,表示显示设备的资源余量支持增加线程数量,则增加内存队列的线程数量,其中,预设阈值预先设置的用于指示支持增加线程数量的资源使用率,包括下述至少一项:中央处理器使用率的阈值、内存使用率的阈值、磁盘使用率的阈值、网络使用率的阈值。资源使用率越小,显示设备的资源余量越大。在资源使用率大于预设阈值的情况下,表示显示设备的资源余量不支持增加线程数量,可以保持内存队列原有的线程数量。
需要强调的是,针对第一内存队列、第二内存队列和第三内存队列的不同所检测的资源使用率不同。针对第一内存队列,资源使用率包括:网络使用率和内存使用率;针对第二内存队列,资源使用率包括:中央处理器使用率和内存使用率;针对第三内存队列,资源使用率包括:中央处理器使用率、内存使用率和网络使用率。
一些实施例中,第一内存队列的线程数量、第二内存队列的线程数量、第三内存队列的线程数量可以根据线程的执行持续时长以及显示设备的资源使用率进行调整。本公开实施例提供一种实施方式,在获取内存队列的线程数量之前,首先检测内存队列中第一线程的执行持续时长,并检测资源使用率;判断执行持续时长是否大于或等于第一预设时长以及资源使用率是否小于或等于预设阈值。在执行持续时长大于或等于第一预设时长,且资源使用率小于或等于预设阈值的情况下,表示第一线程处于长时间执行任务的工作状态,并且显示设备的资源余量充足,可以增加内存队列的线程数量。
在执行持续时长大于或等于第一预设时长且资源使用率大于预设阈值的情况下,表示第一线程处于长时间执行任务的工作状态但显示设备的资源余量不支持增加内存队列的线程数量,则保持内存队列的线程数量。
在执行持续时长小于或等于第二预设时长的情况下,表示第一线程处于短时间快速执行任务的工作状态,此时无论资源只用率是否小于或等于预设阈值,减少内存队列的线程数量。
在执行持续时长大于第二预设时长且小于第一预设时长,并且资源使用率小于或等于预设阈值的情况下,显示设备的资源余量充足,为提升更新任务的执行效率,可以增加内存队列的线程数量;在执行持续时长大于第二预设时长且小于第一预设时长,并且资源使用率大于预设阈值的情况下,保持内存队列的线程数量。
S604、根据目标媒资专辑标识,从多个内存子队列中确定目标内存子队列。
一些实施例中,根据目标专辑标识的哈希值进行计算,进而从多个内存子队列中确定目标内存子队列。可选的,在媒资更新的过程中,根据目标媒资专辑标识确定的目标内存子队列是执行下载任务的第一内存队列中的子队列。
S605、通过通信器从服务器获取目标更新任务对应的媒资,并将媒资缓存至目标内存子队列,以由目标内存子队列对应的目标线程执行目标更新任务,更新媒资。
一些实施例中,显示设备首先通过通信器从服务器获取目标更新任务对应的媒资,根据目标更新任务对应的目标媒资专辑标识,从多个第一内存子队列中确定第一目标内存子队列,将媒资缓存至第一目标内存子队列,然后由第一目标内存子队列对应的第一目标线程执行下载任务,得到媒资的详情信息;之后,根据目标媒资专辑标识,从多个第二内存子队列中确定第二目标内存子队列,将媒资的详情信息缓存至第二目标内存子队列,经由第二目标内存子队列对应的第二目标线程执行格式化任务,得到媒资的格式化数据,使得从服务器下载的媒资的详情信息转换为显示设备所支持的数据格式;进一步的,根据目标媒资专辑标识从多个第三内存子队列中确定第三目标内存子队列,将媒资的格式化数据缓存至第三目标内存子队列,经由第三目标内存子队列对应的第三线程执行输出任务,得到更新的媒资并存储数据库。实现将服务器媒资的更新状态同步至显示设备。
示例性的,如图9所示,图9为本公开实施例提供的目标线程执行目标更新任务的示意图一,图中示出内存队列701中包括第一内存队列71、第二内存队列72、第三内存队列73。其中第一内存队列71被划分为m个第一内存子队列81,第二内存队列72被划分为n个第二内存子队列82,第三内存队列73被划分为s个第三内存子队列83。根据目标更新任务的目标媒资专辑标识确定将媒资缓存至第一目标内存子队列,以由第一目标内存子队列对应的第一目标线程91执行下载任务得到媒资的详情信息;然后根据目标媒资专辑标识确定将媒资缓存至第二目标内存子队列,由第二目标内存子队列对应的第二目标线程92执行格式化任务得到媒资的格式化数据,进一步的根据目标媒资专辑标识确定将媒资的格式化数据缓存至第三目标内存子队列,以由第三目标内存子队对应的第三目标线程93执行输出任务,得到更新的媒资。
在多个更新任务为不同媒资专辑的更新任务情况下,将内存队列进行划分,多个内存队列的进程并行处理,从而同时执行不同媒资的多个更新任务,保证媒资更新的效率。
示例性的,如图10所示,图10为本公开实施例提供的目标线程执行目标更新任务的示意图二。图中根据目标更新任务1的目标媒资专辑标识将媒资1缓存至第一目标内存子队列81A,与此同时,根据目标更新任务2的目标媒资专辑标识将媒资2缓存至第一目标内存子队列81B。之后,第一目标内存子队列81A对应的第一目标线程91A执行下载任务得到媒资1的详情信息,接着由第二目标内存子队列82A缓存媒资1的详情信息,并由对应的第二目标线程92A执行格式化任务,得到媒资1的格式化数据,再由第三目标内存子队列83A缓存媒资1的格式化数据,由对应的第三目标线程93A执行输出任务,得到更新的媒资1。在上述目标线程执行任务更新媒资1的同时,媒资2被其他不同的目标线程做更新处理:第一目标内存子队列81B对应的第一目标线程91B执行下载任务得到媒资2的详情信息,接着由第二目标内存子队列82B缓存媒资2的详情信息,并由对应的第二目标线程92B执行格式化任务,得到媒资2的格式化数据,再由第三目标内存子队列83B缓存媒资2的格式化数据,由对应的第三目标线程93B执行输出任务,得到更新的媒资2。多个线程并发的同时处理媒资1、媒资2的更新任务、互不影响,从而实现快速更新。
在多个更新任务为相同媒资专辑的不同更新任务的情况下,按照相同媒资专辑的不同更新任务的执行顺序,由同一内存队列的线程串行执行更新任务,从而避免出现与服务器更新状态不一致的情况,提升了媒资更新的准确性。
示例性的,如图11所示,图11为本公开实施例提供的目标线程执行目标更新任务的示意图三,媒资1的更新任务包括任务1和任务2,且任务1和任务2存在先后顺序,则根据媒资1的媒资专辑标识确定将媒资1缓存至第一目标内存子队列,第一目标内存子队列对应的第一目标线程91执行任务1的下载任务得到媒资1的详情信息,接着由第二目标内存子队列82缓存媒资1的详情信息,并由对应的第二目标线程92执行格式化任务,得到媒资1的格式化数据,再由第三目标内存子队列83缓存媒资1的格式化数据,由对应的第三目标线程93执行输出任务,得到更新的媒资1。之后,再执行任务2,执行流程与上述相似,本公开在此不做赘述。更新任务执行结束之后,更新的媒资1是任务2对应的执行结果。
上述实施例,根据目标媒资专辑标识确定执行目标更新任务的链路:第一目标内存子队列、第二目标内存子队列、第三目标内存子队列,从而由该链路执行目标更新任务,实现同一媒资的更新任务由同一链路执行,保证同一媒资的更新任务的先后执行顺序。
一些实施例中,在更新媒资之后,生成更新通知,以通知显示设备中除控制器之外的其他组件或装置,和/或,清空目标内存子队列的缓存,释放目标内存子队列,以执行除目标更新任务之外的其他更新任务。
示例性的,如图12所示,图12为本公开实施例中提供的更新媒资的示意图。
在媒资经由内存队列701中包括的目标内存子队列对应的目标线程更新得到更新的媒资之后将更新的媒资存储至数据库10A,生成更新通知并缓存至消息队列10B,以按照更新的先后顺序通知显示设备中其他的组件或装置。
综上,本公开提供的这一行总媒资更新方法首先通过通信器接收服务器发送的媒资更新任务列表,然后获取目标更新任务对应的目标媒资专辑标识,获取内存队列的线程数量,并根据线程数量划分内存队列得到多个内存子队列,再根据目标媒资专辑标识从多个内存子队列中确定目标子队列,进一步的通过通信器从服务器获取目标更新任务对应的媒资,并将媒资缓存至目标内存子队列,以由目标内存子队列对应的目标线程执行目标更新任务,更新媒资。从而将媒资专辑标识相同的更新任务缓存至同一内存子队列,并由同一内存队列对应的同一目标线程执行该更新任务,使得多线程并行处理的同时保证每个更新任务执行的先后顺序,提升了媒资更新的准确性。
本公开实施例提供一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,该计算机程序被处理器执行时实现上述方法实施例中媒资更新方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,该计算机可读存储介质可以为只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等。
本公开实施例提供一种计算程序产品,该计算机程序产品存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例中媒资更新方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本领域技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。
本公开中,处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本公开中,存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
本公开中,计算机可读介质包括永久性和非永久性、可移动和非可移动存储介质。存储介质可以由任何方法或技术来实现信息存储,信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。根据本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种显示设备,其特征在于,包括:
控制器,被配置为:通过通信器接收服务器发送的媒资更新任务列表,所述媒资更新任务列表中包括多个更新任务;
获取目标更新任务对应的目标媒资专辑标识,所述目标更新任务为所述多个更新任务中的任一个;
获取内存队列的线程数量,并根据所述线程数量划分所述内存队列得到多个内存子队列;
根据所述目标媒资专辑标识,从所述多个内存子队列中确定目标内存子队列;
通过所述通信器从所述服务器获取所述目标更新任务对应的媒资,并将所述媒资缓存至所述目标内存子队列,以由所述目标内存子队列对应的目标线程执行所述目标更新任务,更新所述媒资。
2.根据权利要求1所述的显示设备,其特征在于,所述更新任务包括:下载任务、格式化任务、输出任务;
所述控制器,获取内存队列的线程数量,并根据所述线程数量划分所述内存队列得到多个内存子队列,被配置为:
针对所述更新任务将内存队列划分为第一内存队列、第二内存队列、第三内存队列,其中,所述第一内存队列对应所述下载任务,所述第二内存队列对应所述格式化任务,所述第三内存队列对应所述输出任务;
根据所述第一内存队列的线程数量划分所述第一内存队列得到多个第一内存子队列,根据所述第二内存队列的线程数量划分所述第二内存队列得到多个第二内存子队列,根据所述第三内存队列的线程数量划分所述第三内存队列得到多个第三内存子队列。
3.根据权利要求2所述的显示设备,其特征在于,所述控制器,通过所述通信器从所述服务器获取所述目标更新任务对应的媒资,并将所述媒资,缓存至所述目标内存子队列,以由所述目标内存子队列对应的目标线程执行所述目标更新任务,更新所述媒资,被配置为:
从所述服务器获取所述目标更新任务对应的媒资;
将所述媒资缓存至所述目标媒资专辑标识对应的第一目标内存子队列,以由所述第一目标内存子队列对应的第一目标线程执行所述下载任务,得到所述媒资的详情信息;
根据所述目标媒资专辑标识从所述多个第二内存子队列中确定第二目标内存子队列,并将所述媒资的详情信息缓存至所述第二目标内存子队列,以由所述第二目标内存子队列对应的第二目标线程执行所述格式化任务,得到所述媒资的格式化数据;
根据所述目标媒资专辑标识从所述多个第三内存子队列中确定第三目标内存子队列,并将所述媒资的格式化数据缓存至所述第三目标内存子队列,以由所述第三目标内存子队列对应的第三目标线程执行所述输出任务得到更新的媒资,将更新的媒资存储至数据库。
4.根据权利要求1所述的显示设备,其特征在于,所述控制器,获取内存队列的线程数量之前,还被配置为:
检测所述内存队列中第一线程的执行持续时长,所述第一线程为所述内存队列的线程中的至少一个线程;
在所述执行持续时长大于或等于第一预设时长的情况下,增加所述线程数量;
在所述执行持续时长小于或等于第二预设时长的情况下,减少所述线程数量;
在所述执行时长大于第二预设时长,且小于第一预设时长的情况下,保持所述线程数量。
5.根据权利要求1所述的显示设备,其特征在于,所述控制器,在所述执行持续时长大于或等于第一预设时长的情况下,增加所述线程数量,被配置为:
在所述执行持续时长大于或等于第一预设时长,且资源使用率小于或等于预设阈值的情况下,增加所述线程数量;
其中,所述资源使用率包括下述至少一项:中央处理器使用率、内存使用率、磁盘使用率、网络使用率。
6.根据权利要求1所述的显示设备,其特征在于,所述控制器,获取所述目标更新任务对应的媒资专辑标识,被配置为:
在所述目标更新任务不存在对应的媒资专辑标识的情况下,利用随机数生成队列索引值,以作为目标更新任务对应的媒资专辑标识。
7.根据权利要求1所述的显示设备,其特征在于,所述控制器,更新所述媒资之后,还被配置为:
生成更新通知,以通知显示设备中除所述控制器之外的其他组件或装置媒资已更新;
和/或,
清空所述目标内存子队列的缓存,释放所述目标内存子队列,以执行除目标更新任务之外的其他更新任务。
8.根据权利要求1所述的显示设备,其特征在于,所述媒资更新任务列表中包括不同媒资专辑的更新任务,和/或,相同媒资专辑的不同更新任务。
9.一种媒资更新方法,其特征在于,包括:
通过通信器接收服务器发送的媒资更新任务列表,所述媒资更新任务列表中包括多个更新任务;
获取目标更新任务对应的目标媒资专辑标识,所述目标更新任务为所述多个更新任务中的任一个;
获取内存队列的线程数量,并根据所述线程数量划分所述内存队列得到多个内存子队列;
根据所述目标媒资专辑标识,从所述多个内存子队列中确定目标内存子队列;
通过所述通信器从所述服务器获取所述目标更新任务对应的媒资,并将所述媒资,缓存至所述目标内存子队列,以由所述目标内存子队列对应的目标线程执行所述目标更新任务,更新所述媒资。
10.根据权利要求9所述的方法,其特征在于,所述更新任务包括:下载任务、格式化任务、输出任务;
所述获取内存队列的线程数量,并根据所述线程数量划分所述内存队列得到多个内存子队列,包括:
针对所述更新任务将内存队列划分为第一内存队列、第二内存队列、第三内存队列,其中,所述第一内存队列对应所述下载任务,所述第二内存队列对应所述格式化任务,所述第三内存队列对应所述输出任务;
根据第一内存队列的线程数量划分第一内存队列得到多个第一内存子队列,根据第二内存队列的线程数量划分第二内存队列得到多个第二内存子队列,根据第三内存队列的线程数量划分第三内存队列得到多个第三内存子队列。
CN202211003291.0A 2022-08-19 2022-08-19 一种显示设备和媒资更新方法 Pending CN115550735A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211003291.0A CN115550735A (zh) 2022-08-19 2022-08-19 一种显示设备和媒资更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211003291.0A CN115550735A (zh) 2022-08-19 2022-08-19 一种显示设备和媒资更新方法

Publications (1)

Publication Number Publication Date
CN115550735A true CN115550735A (zh) 2022-12-30

Family

ID=84725956

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211003291.0A Pending CN115550735A (zh) 2022-08-19 2022-08-19 一种显示设备和媒资更新方法

Country Status (1)

Country Link
CN (1) CN115550735A (zh)

Similar Documents

Publication Publication Date Title
US11086596B2 (en) Electronic device, server and control method thereof
US11983389B2 (en) Adaptive background playback behavior
US20220248077A1 (en) Video projection method, apparatus and device, and storage medium
KR102488975B1 (ko) 콘텐츠 시청 장치 및 그 콘텐츠 시청 옵션을 디스플레이하는 방법
WO2019100985A1 (zh) 页面处理方法及移动终端
US20140156277A1 (en) Information processing device and content retrieval method
US10733361B2 (en) Content reproducing apparatus
US20160006971A1 (en) Display apparatus and controlling method thereof
US20140149984A1 (en) Information processing apparatus, information processing method, and computer readable medium
CN114554299A (zh) 一种显示设备及分屏显示方法
CN113316014B (zh) 一种显示设备、服务器及第三方数据显示控制方法
US20150149959A1 (en) Display apparatus, server, and control methods thereof
US10250943B2 (en) Method, apparatus, and computer readable recording medium for automatic grouping and management of content in real-time
WO2021093674A1 (zh) 工作流系统中的bi节点执行方法、装置、设备及计算机可读存储介质
US20230139886A1 (en) Device control method and device
CN115550735A (zh) 一种显示设备和媒资更新方法
CN112584210B (zh) 显示设备、视频录制方法及录制文件展示方法
WO2017152764A1 (zh) 一种图片处理方法、装置和智能终端
CN112929717B (zh) 一种焦点管理的方法及显示设备
KR102325340B1 (ko) 방송신호 수신장치가 어플리케이션을 실행하는 방법 및 그 방송신호 수신장치
CN113253905A (zh) 基于多指操作的触控方法及智能终端
CN113093961A (zh) 窗口切换方法、存储介质及相关设备
CN114915810A (zh) 一种媒资推送方法及智能终端
KR20140103038A (ko) 단말 장치, 서버, 단말 장치의 브라우저 구동 시스템, 단말 장치의 브라우저 구동 방법
CN114363679B (zh) 一种显示设备、服务器及媒资播放方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination