[发明专利]线程间通信方法、装置、电子设备及存储介质在审
申请号: | 202110347292.6 | 申请日: | 2021-03-31 |
公开(公告)号: | CN113064739A | 公开(公告)日: | 2021-07-02 |
发明(设计)人: | 李杨威 | 申请(专利权)人: | 北京达佳互联信息技术有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 冯右明 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 线程 通信 方法 装置 电子设备 存储 介质 | ||
本公开关于一种线程间通信方法、装置、电子设备及存储介质,该方法包括:当执行主线程任务时,检测主线程对应的子线程是否执行完成子线程任务;若子线程执行完成子线程任务,则获取子线程任务的处理结果;若对与处理结果对应的任务执行完毕,则执行主线程任务。采用本方法,在执行主线程任务之前,先检测主线程对应的子线程是否执行完成子线程任务,并在子线程执行完成子线程任务之后,获取子线程任务的处理结果,并对与处理结果对应的任务进行处理,再处理主线程任务,避免了子线程任务的处理结果,需要等待主线程处理完所有的主线程任务之后,再返回给主线程,导致线程间的通信时间较长的缺陷,从而减少了线程间的通信时间。
技术领域
本公开涉及通信技术领域,尤其涉及一种线程间通信方法、装置、电子设备及存储介质。
背景技术
随着计算机技术的发展,越来越多的任务通过线程去执行;比如,通过主线程执行一些交互任务,通过子线程执行一些耗时任务。
相关技术中,目前的线程间通信方法,一般是子线程执行完耗时任务之后,将相应的任务处理结果返回给主线程,如果此时主线程还有任务没有执行完成的话,子线程的任务处理结果需要等到主线程的任务结束之后才能返回给主线程;但是,若主线程的任务较多,这个等待时间就会很久,导致线程间通信时间较长。
发明内容
本公开提供一种线程间通信方法、装置、电子设备及存储介质,以至少解决相关技术中线程间通信时间较长的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种线程间通信方法,包括:
当执行主线程任务时,检测所述主线程对应的子线程是否执行完成子线程任务;
若所述子线程执行完成所述子线程任务,则获取所述子线程任务的处理结果;
若对与所述处理结果对应的任务执行完毕,则执行所述主线程任务。
在一示例性实施例中,在当执行主线程任务时,检测所述主线程对应的子线程是否执行完成子线程任务之前,还包括:
获取执行所述主线程任务的任务处理指令;
在所述任务处理指令中添加任务检测指令;所述任务检测指令用于检测所述子线程是否执行完成所述子线程任务。
在一示例性实施例中,所述获取执行所述主线程任务的任务处理指令,包括:
获取所述主线程任务的任务处理方式;
获取与所述任务处理方式对应的任务处理函数,作为所述主线程任务对应的任务处理函数;
将所述主线程任务对应的任务处理函数,识别为执行所述主线程任务的任务处理指令。
在一示例性实施例中,所述当执行主线程任务时,检测所述主线程对应的子线程是否执行完成子线程任务,包括:
当调用所述任务处理指令执行主线程任务时,若识别到所述任务处理指令中添加有所述任务检测指令,则通过所述任务检测指令,检测所述主线程对应的子线程是否执行完成子线程任务。
在一示例性实施例中,所述检测所述主线程对应的子线程是否执行完成子线程任务,包括:
获取所述子线程任务对应的信号量;
若所述信号量为目标信号量,则确认所述子线程执行完成所述子线程任务;所述目标信号量用于表征所述子线程任务执行完成。
在一示例性实施例中,在若对所述处理结果执行完毕,则执行所述主线程任务之后,还包括:
若子线程任务表中的子线程任务均执行完成,则删除所述任务处理指令中的所述任务检测指令。
在一示例性实施例中,在获取所述子线程任务的处理结果之后,还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京达佳互联信息技术有限公司,未经北京达佳互联信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110347292.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种铣刀加工装置及其使用方法
- 下一篇:一种预制装配式结构的灌浆缝封堵装置