[發明專利]線程間通信方法、裝置、電子設備及存儲介質在審
申請號: | 202110347292.6 | 申請日: | 2021-03-31 |
公開(公告)號: | CN113064739A | 公開(公告)日: | 2021-07-02 |
發明(設計)人: | 李楊威 | 申請(專利權)人: | 北京達佳互聯信息技術有限公司 |
主分類號: | G06F9/54 | 分類號: | G06F9/54 |
代理公司: | 廣州華進聯合專利商標代理有限公司 44224 | 代理人: | 馮右明 |
地址: | 100085 北京市海淀*** | 國省代碼: | 北京;11 |
權利要求書: | 查看更多 | 說明書: | 查看更多 |
摘要: | |||
搜索關鍵詞: | 線程 通信 方法 裝置 電子設備 存儲 介質 | ||
本公開關于一種線程間通信方法、裝置、電子設備及存儲介質,該方法包括:當執行主線程任務時,檢測主線程對應的子線程是否執行完成子線程任務;若子線程執行完成子線程任務,則獲取子線程任務的處理結果;若對與處理結果對應的任務執行完畢,則執行主線程任務。采用本方法,在執行主線程任務之前,先檢測主線程對應的子線程是否執行完成子線程任務,并在子線程執行完成子線程任務之后,獲取子線程任務的處理結果,并對與處理結果對應的任務進行處理,再處理主線程任務,避免了子線程任務的處理結果,需要等待主線程處理完所有的主線程任務之后,再返回給主線程,導致線程間的通信時間較長的缺陷,從而減少了線程間的通信時間。
技術領域
本公開涉及通信技術領域,尤其涉及一種線程間通信方法、裝置、電子設備及存儲介質。
背景技術
隨著計算機技術的發展,越來越多的任務通過線程去執行;比如,通過主線程執行一些交互任務,通過子線程執行一些耗時任務。
相關技術中,目前的線程間通信方法,一般是子線程執行完耗時任務之后,將相應的任務處理結果返回給主線程,如果此時主線程還有任務沒有執行完成的話,子線程的任務處理結果需要等到主線程的任務結束之后才能返回給主線程;但是,若主線程的任務較多,這個等待時間就會很久,導致線程間通信時間較長。
發明內容
本公開提供一種線程間通信方法、裝置、電子設備及存儲介質,以至少解決相關技術中線程間通信時間較長的問題。本公開的技術方案如下:
根據本公開實施例的第一方面,提供一種線程間通信方法,包括:
當執行主線程任務時,檢測所述主線程對應的子線程是否執行完成子線程任務;
若所述子線程執行完成所述子線程任務,則獲取所述子線程任務的處理結果;
若對與所述處理結果對應的任務執行完畢,則執行所述主線程任務。
在一示例性實施例中,在當執行主線程任務時,檢測所述主線程對應的子線程是否執行完成子線程任務之前,還包括:
獲取執行所述主線程任務的任務處理指令;
在所述任務處理指令中添加任務檢測指令;所述任務檢測指令用于檢測所述子線程是否執行完成所述子線程任務。
在一示例性實施例中,所述獲取執行所述主線程任務的任務處理指令,包括:
獲取所述主線程任務的任務處理方式;
獲取與所述任務處理方式對應的任務處理函數,作為所述主線程任務對應的任務處理函數;
將所述主線程任務對應的任務處理函數,識別為執行所述主線程任務的任務處理指令。
在一示例性實施例中,所述當執行主線程任務時,檢測所述主線程對應的子線程是否執行完成子線程任務,包括:
當調用所述任務處理指令執行主線程任務時,若識別到所述任務處理指令中添加有所述任務檢測指令,則通過所述任務檢測指令,檢測所述主線程對應的子線程是否執行完成子線程任務。
在一示例性實施例中,所述檢測所述主線程對應的子線程是否執行完成子線程任務,包括:
獲取所述子線程任務對應的信號量;
若所述信號量為目標信號量,則確認所述子線程執行完成所述子線程任務;所述目標信號量用于表征所述子線程任務執行完成。
在一示例性實施例中,在若對所述處理結果執行完畢,則執行所述主線程任務之后,還包括:
若子線程任務表中的子線程任務均執行完成,則刪除所述任務處理指令中的所述任務檢測指令。
在一示例性實施例中,在獲取所述子線程任務的處理結果之后,還包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京達佳互聯信息技術有限公司,未經北京達佳互聯信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110347292.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種銑刀加工裝置及其使用方法
- 下一篇:一種預制裝配式結構的灌漿縫封堵裝置