[发明专利]用于智能设备的任务处理方法和装置在审
申请号: | 201711242775.X | 申请日: | 2017-11-30 |
公开(公告)号: | CN107885590A | 公开(公告)日: | 2018-04-06 |
发明(设计)人: | 常先堂;申茜 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/54 |
代理公司: | 北京英赛嘉华知识产权代理有限责任公司11204 | 代理人: | 王达佐,马晓亚 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 智能 设备 任务 处理 方法 装置 | ||
技术领域
本申请实施例涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及用于智能设备的任务处理方法和装置。
背景技术
随着人工智能的发展,智能设备可以获取用户的语音输入上报服务器,并接收服务器返回的指令执行相应的操作,例如,设备控制、信息查询、日程管理等,从而可以实现用户以自然语言对话的方式与移动设备进行交互。
发明内容
本申请实施例提出了用于智能设备的任务处理方法和装置。
第一方面,本申请实施例提供了一种用于智能设备的任务处理方法,该方法包括:接收服务器发送的业务信息,业务信息包括预定数据格式的任务描述信息;按照预定数据格式解析业务信息以确定待处理任务;将待处理任务排入待处理任务队列;对待处理任务队列中的待处理任务进行处理。
在一些实施例中,待处理任务队列为并发任务队列,对待处理任务队列中的待处理任务进行处理,包括:响应于待处理任务队列不为空并且第一线程池存在空闲线程,将待处理任务队列中的至少部分待处理任务加入到第一线程池,其中,至少部分待处理任务中的待处理任务数量不大于第一线程池的空闲线程数量;至少部分待处理任务执行结束之后,从待处理任务队列中移除至少部分待处理任务。
在一些实施例中,待处理任务队列为串行任务队列,对待处理任务队列中的待处理任务进行处理,包括:响应于不存在正在执行的待处理任务并且串行任务队列不为空,将位于串行任务队列队首的待处理任务作为第一任务,并执行如下串行处理步骤:执行第一任务,并在第一任务执行结束之后从串行任务队列中移除第一任务;响应于串行任务队列不为空,将位于串行任务队列队首的待处理任务作为第一任务,继续执行串行处理步骤。
在一些实施例中,业务信息是服务器基于从智能设备接收的事件信息生成的,事件信息包括以下至少一种:智能设备的语音输入信息、智能设备在待处理任务执行期间的状态变化信息。
在一些实施例中,事件信息通过如下步骤发送到服务器:根据事件信息生成待上报事件;将待上报事件排入待上报事件队列;将待上报事件队列中的待上报事件按照预定数据格式发送到服务器。
在一些实施例中,将待上报事件队列中的待上报事件按照预定数据格式发送到服务器,包括:响应于待上报事件队列不为空并且第二线程池存在空闲线程,将待上报事件队列中的至少部分待上报事件加入到第二线程池,其中,至少部分待上报事件中的待上报事件数量不大于第二线程池的空闲线程数量;至少部分待上报事件执行结束之后,从待上报事件队列中移除至少部分待上报事件。
在一些实施例中,智能设备和服务器之间具有可复用的通信连接。
第二方面,本申请实施例提供了一种用于智能设备的任务处理装置,装置包括:接收单元,配置用于接收服务器发送的业务信息,业务信息包括预定数据格式的任务描述信息;解析单元,配置用于按照预定数据格式解析业务信息以确定待处理任务;分发单元,配置用于将待处理任务排入待处理任务队列;处理单元,配置用于对待处理任务队列中的待处理任务进行处理。
在一些实施例中,待处理任务队列为并发任务队列,处理单元包括:并发执行模块,配置用于响应于待处理任务队列不为空并且第一线程池存在空闲线程,将待处理任务队列中的至少部分待处理任务加入到第一线程池,其中,至少部分待处理任务中的待处理任务数量不大于第一线程池的空闲线程数量;并发移除模块,配置用于在至少部分待处理任务执行结束之后,从待处理任务队列中移除至少部分待处理任务。
在一些实施例中,待处理任务队列为串行任务队列,处理单元包括:第一串行执行模块,配置用于响应于不存在正在执行的待处理任务并且串行任务队列不为空,将位于串行任务队列队首的待处理任务作为第一任务,并执行如下串行处理步骤:执行第一任务,并在第一任务执行结束之后从串行任务队列中移除第一任务;第二串行执行模块,配置用于响应于串行任务队列不为空,将位于串行任务队列队首的待处理任务作为第一任务,继续执行串行处理步骤。
在一些实施例中,业务信息是服务器基于从智能设备接收的事件信息生成的,事件信息包括以下至少一种:智能设备的语音输入信息、智能设备在待处理任务执行期间的状态变化信息。
在一些实施例中,该装置还包括事件单元,配置用于将事件信息发送到服务器。
在一些实施例中,事件单元包括:事件生成模块,配置用于根据事件信息生成待上报事件;事件分发模块,配置用于将待上报事件排入待上报事件队列;上报模块,配置用于将待上报事件队列中的待上报事件按照预定数据格式发送到服务器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711242775.X/2.html,转载请声明来源钻瓜专利网。