CN110580188B - 一种多线程配网方法及存储介质 - Google Patents
一种多线程配网方法及存储介质 Download PDFInfo
- Publication number
- CN110580188B CN110580188B CN201910837569.6A CN201910837569A CN110580188B CN 110580188 B CN110580188 B CN 110580188B CN 201910837569 A CN201910837569 A CN 201910837569A CN 110580188 B CN110580188 B CN 110580188B
- Authority
- CN
- China
- Prior art keywords
- network
- sub
- network allocation
- thread
- task
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 230000006855 networking Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000002699 waste material Substances 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种多线程配网方法及存储介质,终端设备运行的主线程在接收到用户发送的针对多个电子设备的多个配网任务时,主线程建立多个子线程,以使多个子线程同时分别执行各自对应的配网任务,并将分别执行各自对应的配网任务得到的配网结果发送至主线程,从而解决了终端设备在同一时刻只能对一个电子设备进行配网的问题,实现了终端设备在同一时刻能够对多个电子设备进行配网,提高了配网效率,从而提升了用户体验。
Description
技术领域
本发明涉及配网技术领域,具体而言,涉及一种多线程配网方法及存储介质。
背景技术
现有的配网技术通过使用计算机技术、微电子技术以及通信技术,将各种电子设备集成起来,不仅能为用户提供基本的使用需求,还能利用网络技术使得用户享用各电子设备的个性化功能,提升用户使用电子设备的便利性、舒适性以及用户体验。配网技术目前正处于高速发展时期,随着平均每个人拥有的电子设备越来越多,终端设备在对用户的各电子设备进行配网时,由于终端设备在同一时刻只能对一个电子设备进行配网,因此终端设备存在配网效率低的问题。基于此,提供一种同一时刻能够对多个电子设备进行配网的方法是亟待解决的技术问题。
发明内容
本发明提供了一种多线程配网方法及存储介质,能够在同一时刻对多个电子设备进行配网,有效地提高了对电子设备进行配网的效率。
为实现上述目的,本发明实施例采用如下技术方案:
一种多线程配网方法,包括:
主线程在接收到配网任务时,统计所有能够执行配网任务的子线程的数量,并判断该数量是否达到预设阈值以及判断是否存在空闲的子线程;
若该数量未达到预设阈值且不存在空闲的子线程时,则所述主线程新建与所述主线程接收到的配网任务对应的子线程,并将该配网任务发送至新建的子线程;
各所述新建的子线程分别执行对应的配网任务得到配网结果并将所述配网结果发送至所述主线程。
在本发明实施例较佳的选择中,在上述多线程配网方法中,在主线程在接收到配网任务时,统计所有能够执行配网任务的子线程的数量,并判断该数量是否达到预设阈值以及判断是否存在空闲的子线程的步骤之后,所述方法还包括:
若该数量第一次达到预设阈值时,则所述主线程创建待执行配网任务列表,并将该配网任务存储至所述待执行配网任务列表;
所述主线程在检测到存在子线程空闲时,发送所述待执行配网任务列表中的配网任务至该子线程,以使该子线程执行该配网任务得到配网结果并将所述配网结果发送至所述主线程。
在本发明实施例较佳的选择中,在上述多线程配网方法中,所述方法包括:
所述主线程按照接收到的配网任务的先后顺序,为所述配网任务分配序列号,其中,在先接收到的所述配网任务对应的序列号小于在后接收到的所述配网任务对应的序列号,并按照对应的序列号由小到大的顺序将所述配网任务存储至所述主线程创建的待执行配网任务列表;
所述主线程在检测到存在子线程空闲时,发送所述待执行配网任务列表中序列号最小的配网任务至所述子线程,以使该子线程执行该配网任务得到配网结果并将所述配网结果发送至所述主线程,并将该配网任务从所述待执行配网任务列表中删除。
在本发明实施例较佳的选择中,在上述多线程配网方法中,在主线程在接收到配网任务时,统计所有能够执行配网任务的子线程的数量,并判断该数量是否达到预设阈值以及判断是否存在空闲的子线程的步骤之后,所述方法还包括:
若该数量未达到预设阈值且存在空闲的子线程时,则所述主线程将所述配网任务发送至所述空闲的子线程,以使该子线程执行所述配网任务得到配网结果并发送至所述主线程。
在本发明实施例较佳的选择中,在上述多线程配网方法中,所述方法还包括:
所述主线程监控所述子线程执行对应的配网任务时的配网进度,并基于所述配网进度生成配网界面并进行显示。
在本发明实施例较佳的选择中,在上述多线程配网方法中,当所述子线程执行对应的配网任务时,所述方法还包括:
所述主线程接收用户发送的其他任务,并执行该其他任务。
在本发明实施例较佳的选择中,在上述多线程配网方法中,所述方法还包括:
所述主线程在接收到用户发送的针对目标配网任务的取消配网命令时,向该目标配网任务对应的子线程发送所述取消配网命令,以使该子线程根据接收到的取消配网命令停止配网。
在本发明实施例较佳的选择中,在上述多线程配网方法中,所述方法还包括:
所述子线程在开始执行对应的配网任务时开始计时,并在计时达到预设时间阈值且仍未完成配网时,停止配网,生成一配网结果,并将所述配网结果发送至所述主线程,其中,所述配网结果为配网失败;
所述主线程在接收到所述配网结果时,基于该配网结果生成配网结果显示界面并进行显示。
在本发明实施例较佳的选择中,在上述多线程配网方法中,在执行子线程执行对应的配网任务得到配网结果,并将所述配网结果发送至所述主线程的步骤之后,所述方法还包括:
所述主线程在监测到各所述子线程都为空闲状态时开始计时,并在计时达到一预设等待时间阈值,仍未接收到用户发送的配网任务时,回收所述子线程。
本发明还提供了一种存储介质,该存储介质存储的计算机程序,可被一个或多个处理器执行,可用来实现上述任意一项中的多线程配网方法。
本发明提供了一种多线程配网方法及存储介质,终端设备运行的主线程在接收到用户发送的针对多个电子设备的多个配网任务时,主线程建立多个子线程,以使多个子线程同时分别执行各自对应的配网任务,并将分别执行各自对应的配网任务得到的配网结果发送至主线程,从而解决了终端设备在同一时刻只能对一个电子设备进行配网的问题,实现了终端设备在同一时刻能够对多个电子设备进行配网,提高了配网效率,从而提升了用户体验。
附图说明
通过结合附图阅读下文示例性实施例的详细描述可更好地理解本发明公开的范围。其中所包括的附图是:
图1为本发明实施例提供的多线程配网方法的流程图;
图2为本发明实施例提供的多线程配网方法中子线程配网超时处理的流程图;
图3为本发明实施例提供的多线程配网方法中执行待执行配网任务列表中的配网任务的流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本发明的一部分实施例,而不是全部的实施例。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
请参阅图1,本发明实施例提供了一种多线程配网方法,该方法包括步骤S110至步骤S130。
步骤S110,主线程在接收到配网任务时,统计所有能够执行配网任务的子线程的数量,并判断该数量是否达到预设阈值以及判断是否存在空闲的子线程。
具体的,所述主线程可以用于执行产生多个子线程并管理其产生的多个子线程等操作;所述主线程接收终端设备基于用户的操作而发送的所述配网任务,所述配网任务中包括所述终端设备基于用户的操作获得的待配网的电子设备的设备信息,其中,所述待配网的电子设备包括但不限于:空调、风扇、空气净化器、加湿器、电饭煲、冰箱、净水机、热水器以及智能门锁;所述终端设备基于用户的操作获得的待配网的电子设备的设备信息的方式包括:所述终端设备基于用户通过操作扫描软件、扫描仪器、键盘、录音机等输入设备来获取所述待配网的电子设备的设备信息;所述设备信息包括但不限于所述待配网的电子设备的种类和所述待配网的电子设备的型号。
可以理解,所述主线程可以创建的子线程数量应当小于或等于所述预设阈值,即当所述主线程已创建的所述子线程的数量达到所述预设阈值时,所述主线程将不能继续创建子线程。
其中,所述预设阈值可以为2至10,优选的,本实施例中,所述预设阈值为3。
此外,由于每个子线程执行的对应的配网任务各不相同,因此每个子线程执行该配网任务的进度也各不相同,当所述主线程接收到新的配网任务时,通过判断是否存在空闲的子线程,以在存在子线程执行完成当前配网任务并处于空闲状态时,为该子线程分配新的配网任务,而不需要所述主线程再次分配新的子线程,避免了子线程资源的浪费。
步骤S120,若该数量未达到预设阈值且不存在空闲的子线程时,则所述主线程新建与所述主线程接收到的配网任务对应的子线程,并将该配网任务发送至新建的子线程。
具体的,若所述主线程创建的所述子线程的数量未达到预设阈值且不存在空闲的子线程时,表示所述主线程仍然可以继续创建新的子线程,且在先创建的子线程中并没有能够执行最新接收到的所述配网任务的子线程,因此所述主线程新建一个与最新接收到的配网任务对应的新的子线程,并将该配网任务发送至该子线程。
步骤S130,各所述新建的子线程分别执行对应的配网任务得到配网结果,并将所述配网结果发送至所述主线程。
具体的,各所述新建的子线程执行对应的配网任务的步骤包括:所述子线程从对应的配网任务中解析出对应的待配网的电子设备的设备信息,并从所述设备信息中查找出所述待配网的电子设备的MAC地址,并将所述MAC地址上传至所述待配网的电子设备的生产厂商规定的服务器时完成配网,并生成配网成功的配网结果;可以理解,当所述MAC地址未上传至所述服务器或未从配网任务解析到MAC地址时,配网结果为配网失败。
在本实施例中,在执行步骤S130之后,所述方法还包括:所述主线程监控所述子线程执行对应的配网任务时的配网进度,并基于所述配网进度生成配网界面并进行显示。
具体的,所述配网界面包括配网进度列表,所述配网进度列表用于记录所述子线程执行所述配网任务的进度,配网进度列表中还包括每个配网任务对应的电子设备的设备信息,以使用户可以通过点击所述配网进度列表中的目标配网任务的进度,来查看所述目标配网任务对应的目标电子设备的设备信息。
需要说明的是,在本实施例中,多个所述子线程分别接收到的对应的所述配网任务相互独立,各所述子线程的配网步骤互不影响。
为进一步提高所述主线程的利用率,在本实施例中,所述主线程接收用户发送的其他任务,并执行该其他任务。
可以理解,当所述子线程执行所述配网任务时,用户可以向所述主线程发送界面缩小或隐藏命令,以使所述主线程将所述配网界面收缩至所述终端设备屏幕的角落处或进行隐藏,并使所述子线程在后台继续执行所述配网任务,而用户则可以向所述主线程发送其他任务,以使所述主线程接收用户发送的其他任务,并执行该其他任务,所述其他任务包括但不限于:浏览所述主线程对应的应用程序的首页信息、查看所述主线程对应的应用程序中的用户设置信息、通过所述主线程对应的应用程序在线购买商品以及通过所述主线程对应的应用程序预约电子设备保养时间。
可以理解,用户也可以通过点击收缩至所述终端设备屏幕的角落处的配网界面的方式向所述主线程发送界面恢复命令,以使所述主线程将所述配网界面恢复到正常大小以便于用户查看所述子线程执行所述配网任务的进度。
可以理解,当所述子线程执行对应的配网任务得到的配网结果为配网成功时,所述子线程将所述配网成功的配网结果发送至所述主线程,所述主线程向用户发出进行后续操作提示,用户按照所述后续操作提示执行后续操作,其中,所述后续操作包括选择所述配网成功的电子设备的应用场景。
在本实施例中,所述主线程在接收到用户发送的针对目标配网任务的取消配网命令时,向该目标配网任务对应的子线程发送所述取消配网命令,以使该子线程根据接收到的取消配网命令停止执行对应的配网任务。
可以理解,用户针对目标配网任务的发送取消配网命令的方式可以是用户通过点击所述配网进度列表中的目标配网任务并选择取消所述目标配网任务。请参阅图2,在本实施例中,当所述子线程在执行所述配网任务时,若出现超时的情况时,执行步骤S210至步骤S240。
步骤S210:所述子线程在开始执行对应的配网任务时开始计时。
步骤S220:所述子线程在计时达到预设时间阈值且仍未完成配网时,停止配网。
具体的,所述预设时间阈值可以为60秒至180秒,优选的,本实施例中的所述预设时间阈值为120秒。
步骤S230:所述子线程生成一配网结果,并将所述配网结果发送至所述主线程。
可以理解,所述子线程在计时达到预设时间阈值且仍未完成配网时,表示所述配网任务执行超时,即此时所述配网结果为配网失败。
步骤S240:所述主线程在接收到所述配网结果时,基于该配网结果生成配网结果显示界面并进行显示。
所述主线程在接收到所述配网结果时,基于该配网结果生成配网结果显示界面并进行显示,并生成一重试配网提示信息,若所述主线程接收到用户基于所述重试配网提示信息发送的重试配网命令,则所述主线程将所述重试配网命令解析为一新的配网任务,并返回执行步骤S110至步骤S130;若所述主线程接收到用户发送的取消重试配网命令,则所述子线程的工作状态变更为空闲状态,以等待被所述主线程回收或执行所述主线程发送的新的配网任务,其中,该子线程为发送配网失败的配网结果至所述主线程的子线程。
在本实施例中,所述主线程在监测到各所述子线程都为空闲状态时开始计时,并在计时达到一预设等待时间阈值,仍未接收到用户发送的配网任务时,回收所述子线程。
可选的,所述预设等待时间阈值为60秒至180秒,优选的,本实施例中的所述预设等待时间阈值为120秒。
在本实施例中,在执行步骤S110之后,所述方法还包括:
若所有能够执行配网任务的子线程的数量第一次达到预设阈值时,则所述主线程创建待执行配网任务列表,并将该配网任务存储至所述待执行配网任务列表;所述主线程在检测到存在子线程空闲时,发送所述待执行配网任务列表中的配网任务至该子线程,以使该子线程执行该配网任务得到配网结果并将所述配网结果发送至所述主线程。
可以理解,当所有能够执行配网任务的子线程的数量达到预设阈值时,表示所述主线程已经不能再创建新的子线程,因此,所述主线程创建一待执行配网任务列表,并将接收到的配网任务存储至所述待执行配网任务列表,该配网任务等待被执行。可以理解,对存储在所述待执行配网任务列表中的所述配网任务实行的配网策略包括但不限于:先接收先执行、按照随机顺序执行、先接收后执行,通常情况下,先接收先执行的配网策略更加符合用户的主观意愿,因此本实施例中,对所述主线程接收到的所述配网任务实行先接收先执行的配网策略,即,待执行配网任务列表中序列号小的所述配网任务的优先级高于序列号大的所述配网任务的优先级,序列号小的所述配网任务先于序列号大的所述配网任务被执行。
可选的,在本实施例中请参阅图3,若所有能够执行配网任务的子线程的数量第一次达到预设阈值时,执行步骤S310至步骤S340。
步骤S310:所述主线程按照接收到的配网任务的先后顺序,为所述配网任务分配序列号。
其中,在先接收到的所述配网任务对应的序列号小于在后接收到的所述配网任务对应的序列号。
步骤S320:所述主线程按照对应的序列号由小到大的顺序将所述配网任务存储至所述主线程创建的待执行配网任务列表。
步骤S330:所述主线程在检测到存在子线程空闲时,发送所述待执行配网任务列表中序列号最小的配网任务至所述子线程,以使该子线程执行该配网任务得到配网结果并将所述配网结果发送至所述主线程。
步骤S340:所述主线程将该配网任务从所述待执行配网任务列表中删除。
可以理解,当所述配网任务被发送到所述子线程之后,所述主线程应当将该配网任务从所述待执行配网任务列表中删除,以使所述待执行配网任务列表中序列号大于且最接近该配网任务的序列号的配网任务成为具有最小序列号的配网任务,并在所述主线程再次检测到存在子线程空闲时,将所述具有最小序列号的配网任务发送至该子线程。
可以理解,若所有能够执行配网任务的子线程的数量再次达到预设阈值时,则所述主线程将为再次接收到的配网任务分配一个当前最大的序列号后将其存储至已创建的所述待执行配网任务列表,并按照本实施例中先接收先执行的原则,等待被所述主线程指定的子线程执行。
可以理解,当所有能够执行配网任务的子线程的数量达到预设阈值且存在空闲的子线程时,表示所述主线程已经不能再创建新的子线程,但现有的子线程中存在空闲的子线程,因此,所述主线程按照本实施例中先接收先执行的原则,为所述接收到的配网任务分配一个当前最大的序列号后,将其存储至所述待执行配网任务列表,并将所述待执行配网任务列表中的序列号最小的配网任务发送给所述空闲的子线程,以使该子线程执行该配网任务得到配网结果并将所述配网结果发送至所述主线程,并将该配网任务从所述待执行配网任务列表中删除。
在本实施例中,在执行步骤S110之后,所述方法还包括:若所有能够执行配网任务的子线程的数量未达到预设阈值且存在空闲的子线程时,则所述主线程将所述配网任务发送至所述空闲的子线程,以使该子线程执行所述配网任务得到配网结果并发送至所述主线程。
可以理解,当所有能够执行配网任务的子线程的数量未达到预设阈值且存在空闲的子线程时,表示所述主线程的待执行配网任务列表为空,且存在空闲的子线程可以立即执行此时接收到的所述配网任务,因此所述主线程将所述配网任务发送至所述空闲的子线程;以使该子线程执行所述配网任务得到配网结果并发送至所述主线程。
本发明实施例还提供了一种存储介质,该存储介质存储的计算机程序,可被一个或多个处理器执行,可用来实现上述的多线程配网方法。
综上所述,本发明提供了一种多线程配网方法及存储介质,终端设备运行的主线程在接收到用户发送的针对多个电子设备的多个配网任务时,主线程建立多个子线程,以使多个子线程同时分别执行各自对应的配网任务,并将分别执行各自对应的配网任务得到的配网结果发送至主线程,从而解决了终端设备在同一时刻只能对一个电子设备进行配网的问题,实现了终端设备在同一时刻能够对多个电子设备进行配网,提高了配网效率,从而提升了用户体验。
进一步地,在多个子线程执行多个配网任务的过程中,主线程监控子线程执行对应的配网任务时的配网进度,并基于配网进度生成配网界面并进行显示,用户可以通过点击所述配网进度列表中的目标配网任务的进度,来查看所述目标配网任务对应的目标电子设备的设备信息,或通过配网界面取消某个电子设备的配网任务,便于用户实时掌控配网进度从而提升用户体验。
进一步地,在多个子线程执行多个配网任务的过程中,主线程可以在子线程执行电子设备的配网任务时执行用户发送的其他任务,避免了线程资源的浪费,同时充实了用户等待配网任务被执行的等待时间,极大地提升了用户体验。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干命令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
虽然本发明所公开的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所公开的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (7)
1.一种多线程配网方法,其特征在于,所述方法包括:
主线程在接收到配网任务时,统计所有能够执行配网任务的子线程的数量,并判断该数量是否达到预设阈值以及判断是否存在空闲的子线程;
若该数量未达到预设阈值且存在空闲的子线程时,则所述主线程将所述配网任务发送至所述空闲的子线程,以使该子线程执行所述配网任务得到配网结果并发送至所述主线程;
若该数量未达到预设阈值且不存在空闲的子线程时,则所述主线程新建与所述主线程接收到的配网任务对应的子线程,并将该配网任务发送至新建的子线程;
各所述新建的子线程分别执行对应的配网任务得到配网结果,并将所述配网结果发送至所述主线程;
所述主线程在监测到各所述子线程都为空闲状态时开始计时,并在计时达到一预设等待时间阈值,仍未接收到用户发送的配网任务时,回收所述子线程;
当所述子线程执行对应的配网任务时,所述方法还包括:
所述主线程接收用户发送的其他任务,并执行该其他任务。
2.根据权利要求1所述的多线程配网方法,其特征在于,在主线程在接收到配网任务时,统计所有能够执行配网任务的子线程的数量,并判断该数量是否达到预设阈值以及判断是否存在空闲的子线程的步骤之后,所述方法还包括:
若该数量第一次达到预设阈值时,则所述主线程创建待执行配网任务列表,并将该配网任务存储至所述待执行配网任务列表;
所述主线程在检测到存在子线程空闲时,发送所述待执行配网任务列表中的配网任务至该子线程,以使该子线程执行该配网任务得到配网结果并将所述配网结果发送至所述主线程。
3.根据权利要求2所述的多线程配网方法,其特征在于,所述方法包括:
所述主线程按照接收到的配网任务的先后顺序,为所述配网任务分配序列号,其中,在先接收到的所述配网任务对应的序列号小于在后接收到的所述配网任务对应的序列号,并按照对应的序列号由小到大的顺序将所述配网任务存储至所述主线程创建的待执行配网任务列表;
所述主线程在检测到存在子线程空闲时,发送所述待执行配网任务列表中序列号最小的配网任务至所述子线程,以使该子线程执行该配网任务得到配网结果并将所述配网结果发送至所述主线程,并将该配网任务从所述待执行配网任务列表中删除。
4.根据权利要求1所述的多线程配网方法,其特征在于,所述方法还包括:
所述主线程监控所述子线程执行对应的配网任务时的配网进度,并基于所述配网进度生成配网界面并进行显示。
5.根据权利要求1所述的多线程配网方法,其特征在于,所述方法还包括:
所述主线程在接收到用户发送的针对目标配网任务的取消配网命令时,向该目标配网任务对应的子线程发送所述取消配网命令,以使该子线程根据接收到的取消配网命令停止配网。
6.根据权利要求1所述的多线程配网方法,其特征在于,所述方法还包括:
所述子线程在开始执行对应的配网任务时开始计时,并在计时达到预设时间阈值且仍未完成配网时,停止配网,生成一配网结果,并将所述配网结果发送至所述主线程,其中,所述配网结果为配网失败;
所述主线程在接收到所述配网结果时,基于该配网结果生成配网结果显示界面并进行显示。
7.一种存储介质,其特征在于,该存储介质存储的计算机程序,可被一个或多个处理器执行,可用来实现如权利要求1至6中任意一项中的多线程配网方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910837569.6A CN110580188B (zh) | 2019-09-05 | 2019-09-05 | 一种多线程配网方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910837569.6A CN110580188B (zh) | 2019-09-05 | 2019-09-05 | 一种多线程配网方法及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110580188A CN110580188A (zh) | 2019-12-17 |
CN110580188B true CN110580188B (zh) | 2023-09-26 |
Family
ID=68812520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910837569.6A Active CN110580188B (zh) | 2019-09-05 | 2019-09-05 | 一种多线程配网方法及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110580188B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111478797A (zh) * | 2020-03-10 | 2020-07-31 | 北京意锐新创科技有限公司 | 适用于支付设备的配网方法和装置 |
CN111597364B (zh) * | 2020-03-27 | 2024-01-30 | 广联达科技股份有限公司 | 工程量计算中间层生成方法、装置、存储介质、电子设备 |
CN113064739A (zh) * | 2021-03-31 | 2021-07-02 | 北京达佳互联信息技术有限公司 | 线程间通信方法、装置、电子设备及存储介质 |
CN114007128A (zh) * | 2021-10-29 | 2022-02-01 | 海信视像科技股份有限公司 | 一种显示设备及配网方法 |
CN114007129A (zh) * | 2021-10-29 | 2022-02-01 | 海信视像科技股份有限公司 | 一种显示设备及配网方法 |
CN113810917A (zh) * | 2021-10-29 | 2021-12-17 | 上海庆科信息技术有限公司 | 设备配网方法、装置、存储介质、处理器及电子设备 |
CN114258050A (zh) * | 2021-12-20 | 2022-03-29 | 珠海格力电器股份有限公司 | 一种多个设备批量配网、批量网络解绑的方法和模组 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105843886A (zh) * | 2016-03-21 | 2016-08-10 | 国电南瑞科技股份有限公司 | 一种基于多线程的电网离线模型数据查询方法 |
CN107391090A (zh) * | 2017-07-28 | 2017-11-24 | 成都优博创通信技术股份有限公司 | 多线程执行方法及装置 |
CN109032775A (zh) * | 2018-06-29 | 2018-12-18 | 武汉斗鱼网络科技有限公司 | 一种获取任务进度的方法、终端设备及存储介质 |
CN109284190A (zh) * | 2018-09-20 | 2019-01-29 | 中链科技有限公司 | 一种任务处理方法及装置 |
CN109510743A (zh) * | 2018-11-16 | 2019-03-22 | 中山市力泰电子工业有限公司 | 一种智能音箱***的快速集群方法 |
CN109582455A (zh) * | 2018-12-03 | 2019-04-05 | 恒生电子股份有限公司 | 多线程任务处理方法、装置及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10318302B2 (en) * | 2016-06-03 | 2019-06-11 | Synopsys, Inc. | Thread switching in microprocessor without full save and restore of register file |
-
2019
- 2019-09-05 CN CN201910837569.6A patent/CN110580188B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105843886A (zh) * | 2016-03-21 | 2016-08-10 | 国电南瑞科技股份有限公司 | 一种基于多线程的电网离线模型数据查询方法 |
CN107391090A (zh) * | 2017-07-28 | 2017-11-24 | 成都优博创通信技术股份有限公司 | 多线程执行方法及装置 |
CN109032775A (zh) * | 2018-06-29 | 2018-12-18 | 武汉斗鱼网络科技有限公司 | 一种获取任务进度的方法、终端设备及存储介质 |
CN109284190A (zh) * | 2018-09-20 | 2019-01-29 | 中链科技有限公司 | 一种任务处理方法及装置 |
CN109510743A (zh) * | 2018-11-16 | 2019-03-22 | 中山市力泰电子工业有限公司 | 一种智能音箱***的快速集群方法 |
CN109582455A (zh) * | 2018-12-03 | 2019-04-05 | 恒生电子股份有限公司 | 多线程任务处理方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110580188A (zh) | 2019-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110580188B (zh) | 一种多线程配网方法及存储介质 | |
US6192388B1 (en) | Detecting available computers to participate in computationally complex distributed processing problem | |
WO2019205371A1 (zh) | 服务器、消息分配的方法及存储介质 | |
CN105704155B (zh) | 信息推送方法及装置 | |
CN106846040A (zh) | 一种直播间中虚拟礼物显示方法和*** | |
CN110502340A (zh) | 一种资源动态调整方法、装置、设备及存储介质 | |
CN111552565A (zh) | 一种多线程投屏方法和装置 | |
CN111506404A (zh) | 一种基于Kubernetes的共享GPU调度方法 | |
WO2014183427A1 (en) | Method and apparatus for displaying webcast rooms | |
CN111338773A (zh) | 一种分布式定时任务调度方法、调度***及服务器集群 | |
CN109936593B (zh) | 一种消息分发的方法和*** | |
CN110138652B (zh) | 一种会话更新方法、装置及客户端设备 | |
CN108537586A (zh) | 基于用户画像的数据处理方法及装置 | |
CN110555019B (zh) | 一种基于业务端的数据清洗方法 | |
CN111340230B (zh) | 一种服务提供方法、装置、服务器及计算机可读存储介质 | |
CN106502840A (zh) | 一种数据备份方法、装置及*** | |
CN113206877A (zh) | 一种会话保持方法及装置 | |
CN109218817B (zh) | 一种显示虚拟礼物提示消息的方法和装置 | |
CN103581273B (zh) | 一种分布式***执行业务的方法、装置及*** | |
CN114244642B (zh) | 设备的控制方法及其装置、计算机可读存储介质、处理器 | |
CN109582439B (zh) | Dcn部署方法、装置、设备及计算机可读存储介质 | |
CN109948332A (zh) | 一种物理机登录密码重置方法及装置 | |
CN105208137A (zh) | 一种互联网协议ip地址分配方法、装置、服务器和终端 | |
CN114666615A (zh) | 资源调配方法、装置、服务器、程序和存储介质 | |
CN114302478A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |