欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

多線程創(chuàng)建系統(tǒng)及方法、多線程處理系統(tǒng)及方法與流程

文檔序號:12063462閱讀:164來源:國知局
多線程創(chuàng)建系統(tǒng)及方法、多線程處理系統(tǒng)及方法與流程

本發(fā)明涉及計算機技術領域,特涉及一種多線程創(chuàng)建系統(tǒng)及方法、多線程處理系統(tǒng)及方法。



背景技術:

現有技術的窗體中,用的是消息隊列的方式,而不是用多個線程,這樣是為了程序的擴展性。我們按它的框架來寫代碼,可以實現方便快捷的開發(fā),但是也使得很多應用程序編程接口并不是線程安全的,甚至有些函數不支持在非窗體主線程上是用;可是在所有程序,都有可能需要并行執(zhí)行。如果不并行,都在窗體主線程中執(zhí)行,就有可能會等待,而在窗體主程序中做等待,會使得程序變灰色,然后彈出“程序未響應”的系統(tǒng)提示。只有這個等待結束后,程序才能恢復。然而,如果用多線程,又會出現很多的臨界區(qū)(基本上在窗體的應用程序編程接口都屬于臨界區(qū)了),這樣也會使得編程變得很費力。再者,如果線程有多個子線程,在需要釋放窗體的時候,也必須等待子線程結束后,才能釋放窗體,這樣也使得主線程出現等待的現象,然后彈出“程序未響應”的系統(tǒng)提示,所以有必要對這些問題進行解決。



技術實現要素:

本發(fā)明的目的是提供一種多線程創(chuàng)建系統(tǒng)及方法、多線程處理系統(tǒng)及方法,所要解決的技術問題是:如何減少臨界區(qū),改善程序的流程性,提高用戶體驗,線程的處理規(guī)范化,也可以保證系統(tǒng)穩(wěn)定性。

本發(fā)明解決上述技術問題的技術方案如下:一種多線程創(chuàng)建系統(tǒng),包括接口模塊、窗口對象模塊、線程消息隊列模塊和線程處理模塊;

所述接口模塊,用于接收外部的窗體對象指令,并傳輸至窗口對象模塊;還用于將窗體對象傳輸至外部進行顯示;

所述窗口對象模塊,用于根據窗體對象指令生成窗體對象,同時分別生成創(chuàng)建第一線程消息隊列指令、創(chuàng)建第二線程消息隊列指令、創(chuàng)建主線程指令和創(chuàng)建子線程指令;還用于根據第一創(chuàng)建成功消息和第二創(chuàng)建成功消息向所述接口模塊輸出窗體對象;

所述線程消息隊列模塊,用于根據創(chuàng)建第一線程消息隊列指令和創(chuàng)建第二線程消息隊列指令分別創(chuàng)建第一線程消息隊列和第二線程消息隊列,并向窗口對象模塊返回第一創(chuàng)建成功消息;

所述線程處理模塊,用于根據創(chuàng)建主線程指令和創(chuàng)建子線程指令分別創(chuàng)建主線程和子線程,并向窗口對象模塊返回第二創(chuàng)建成功消息。

本發(fā)明的有益效果是:通過創(chuàng)建第一線程消息隊列、第二線程消息隊列、主線程和子線程,能使主線程在第一線程消息隊列中保存排序,能使子線程在第二線程消息隊列中保存排序,充分實現主線程和子線程進行并行處理;線程處理模塊能對主線程和子線程統(tǒng)一管理,使得管理簡單而統(tǒng)一,提升穩(wěn)定性。

在上述技術方案的基礎上,本發(fā)明還可以做如下改進。

進一步,所述線程處理模塊創(chuàng)建主線程和子線程過程中分別向主線程和子線程中植入智能指針。

采用上述進一步方案的有益效果是:主線程和子線程中植入智能指針,通過智能指針能保證主線程和子線程能相對自動處理,使得運行更加流暢和快速。

本發(fā)明解決上述技術問題的另一技術方案如下:一種多線程處理系統(tǒng),包括多線程創(chuàng)建系統(tǒng)及其創(chuàng)建的第一線程消息隊列、第二線程消息隊列、主線程和子線程;

所述接口模塊,所述接口模塊,用于接收外部的操作指令,傳輸至窗口對象模塊;還用于對第一處理結果傳輸至外部進行顯示;還用于對第二處理結果傳輸至外部進行顯示;

所述窗口對象模塊,用于對操作指令所要求執(zhí)行的任務進行判斷,當判斷所要執(zhí)行的任務需要在線程處理時,提取對應主線程傳輸至線程消息隊列模塊,并生成第一處理結果返回接口模塊;

所述線程消息隊列模塊,用于將主線程放入第一線程消息隊列進行保存和排序;

所述線程處理模塊4,用于讀取第一線程消息隊列內的主線程,通過主線程進行處理,調取資源執(zhí)行對應任務,完成任務時向接口模塊1返回第二處理結果;完成任務后將子線程放入第二線程消息隊列中,通過子線程清除主線程調取的資源,清除窗口對象。

本發(fā)明的有益效果是:能使主線程在第一線程消息隊列中保存排序,能使子線程在第二線程消息隊列中保存排序,充分實現主線程和子線程進行并行處理;線程處理模塊能對主線程和子線程統(tǒng)一管理,使得管理簡單而統(tǒng)一,提升穩(wěn)定性,能減少臨界區(qū),改善程序的流程性,提高用戶體驗,線程的處理規(guī)范化,也可以保證系統(tǒng)穩(wěn)定性。

在上述技術方案的基礎上,本發(fā)明還可以做如下改進。

進一步,所述窗口對象模塊對操作指令所要求執(zhí)行的任務進行判斷,當所要執(zhí)行的任務延時或者執(zhí)行任務所用的資源只是在線程中,則所要執(zhí)行的任務需要在線程處理。

采用上述進一步方案的有益效果是:窗口對象模塊對操作指令所要求執(zhí)行的任務進行判斷,能提升對延時高的任務或者所用的資源只是在線程中的任務進行高效處理,能對減少臨界區(qū),改善程序的流程性,提高用戶體驗,線程的處理規(guī)范化,也可以保證系統(tǒng)穩(wěn)定性。

進一步,所述接口模塊,用于根據第一處理結果生成清理窗口指令,傳輸至窗口對象模塊;還用對清理結束信號進行顯示;

所述窗口對象模塊,用于根據清理窗口指令調取子線程傳輸至線程消息隊列模塊;還用于根據第三處理結果通過主線程隱藏窗體對象;還用于根據第四處理結果清理窗體對象,向接口模塊返回清理結束信號;

所述線程消息隊列模塊,用于將子線程放入第二線程消息隊列進行保存和排序,生成第三處理結果返回窗口對象模塊;

所述線程處理模塊,用于讀取第二線程消息隊列中的子線程,清除主線程調取的資源,同時關閉子線程;完成任務時向窗口對象模塊返回第四處理結果。

采用上述進一步方案的有益效果是:子線程的清理過程與主線程是并行,異步的;用戶清理任務只是將窗體隱藏,然后資源清理用子線程處理,子線程得到充分的利用,而又不影響主線程工作;使得釋放變動非常流暢和快速。

進一步,所述線程處理模塊還用于調取主線程,主線程根據第四處理結果清理清理窗體對象。

采用上述進一步方案的有益效果是:主線程的清理過程能與子線程的清理過程異步并行處理,使得釋放變動非常流暢和快速。

本發(fā)明解決上述技術問題的另一技術方案如下:一種多線程創(chuàng)建方法,包括以下步驟:

步驟A1.接收外部的窗體對象指令,根據窗體對象指令生成窗體對象,同時分別生成創(chuàng)建第一線程消息隊列指令、創(chuàng)建第二線程消息隊列指令、創(chuàng)建主線程指令和創(chuàng)建子線程指令;

步驟A2.根據創(chuàng)建第一線程消息隊列指令和創(chuàng)建第二線程消息隊列指令分別創(chuàng)建第一線程消息隊列和第二線程消息隊列,并返回第一創(chuàng)建成功消息;根據創(chuàng)建主線程指令和創(chuàng)建子線程指令分別創(chuàng)建主線程和子線程,并返回第二創(chuàng)建成功消息;

步驟A3.根據第一創(chuàng)建成功消息和第二創(chuàng)建成功消息輸出窗體對象,將窗體對象傳輸至外部進行顯示。

本發(fā)明的有益效果是:通過創(chuàng)建第一線程消息隊列、第二線程消息隊列、主線程和子線程,能使主線程在第一線程消息隊列中保存排序,能使子線程在第二線程消息隊列中保存排序,充分實現主線程和子線程進行并行處理;能對主線程和子線程統(tǒng)一管理,使得管理簡單而統(tǒng)一,提升穩(wěn)定性。

在上述技術方案的基礎上,本發(fā)明還可以做如下改進。

進一步,在步驟A2中,創(chuàng)建主線程和子線程過程中分別向主線程和子線程中植入智能指針。

采用上述進一步方案的有益效果是:主線程和子線程中植入智能指針,通過智能指針能保證主線程和子線程能相對自動處理,使得運行更加流暢和快速。

本發(fā)明解決上述技術問題的另一技術方案如下:一種多線程處理方法,包括以下步驟:

步驟B1.接收外部的操作指令,對操作指令所要求執(zhí)行的任務進行判斷,當判斷所要執(zhí)行的任務需要在線程處理時,提取對應主線程傳輸至第一線程消息隊列,并生成第一處理結果傳輸至外部進行顯示;

步驟B2.將主線程放入第一線程消息隊列進行保存和排序;

步驟B3.讀取第一線程消息隊列內的主線程,通過主線程進行處理,調取資源執(zhí)行對應任務,完成任務時返回第二處理結果傳輸至外部進行顯示;完成任務后還清除主線程調取的資源,清除窗口對象。

本發(fā)明的有益效果是:能使主線程在第一線程消息隊列中保存排序,能使子線程在第二線程消息隊列中保存排序,充分實現主線程和子線程進行并行處理;能對主線程和子線程統(tǒng)一管理,使得管理簡單而統(tǒng)一,提升穩(wěn)定性,能減少臨界區(qū),改善程序的流程性,提高用戶體驗,線程的處理規(guī)范化,也可以保證系統(tǒng)穩(wěn)定性。

在上述技術方案的基礎上,本發(fā)明還可以做如下改進。

進一步,步驟B1中對操作指令所要求執(zhí)行的任務進行判斷,當所要執(zhí)行的任務延時或者執(zhí)行任務所用的資源只是在線程中,則所要執(zhí)行的任務需要在線程處理。

采用上述進一步方案的有益效果是:對操作指令所要求執(zhí)行的任務進行判斷,能提升對延時高的任務或者所用的資源只是在線程中的任務進行高效處理,能對減少臨界區(qū),改善程序的流程性,提高用戶體驗,線程的處理規(guī)范化,也可以保證系統(tǒng)穩(wěn)定性。

附圖說明

圖1為本發(fā)明一種多線程創(chuàng)建系統(tǒng)的模塊框圖;

圖2為本發(fā)明一種多線程創(chuàng)建方法的流程圖;

圖3為本發(fā)明一種多線程處理方法的流程圖。

附圖中,各標號所代表的部件列表如下:

1、接口模塊,2、窗口對象模塊,3、線程消息隊列模塊,4、線程處理模塊。

具體實施方式

以下結合附圖對本發(fā)明的原理和特征進行描述,所舉實例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。

如圖1所示,一種多線程創(chuàng)建系統(tǒng),包括接口模塊1、窗口對象模塊2、線程消息隊列模塊3和線程處理模塊4;

所述接口模塊1,用于接收外部的窗體對象指令,并傳輸至窗口對象模塊;還用于將窗體對象傳輸至外部進行顯示;

所述窗口對象模塊2,用于根據窗體對象指令生成窗體對象,同時分別生成創(chuàng)建第一線程消息隊列指令、創(chuàng)建第二線程消息隊列指令、創(chuàng)建主線程指令和創(chuàng)建子線程指令;還用于根據第一創(chuàng)建成功消息和第二創(chuàng)建成功消息向所述接口模塊1輸出窗體對象;

所述線程消息隊列模塊3,用于根據創(chuàng)建第一線程消息隊列指令和創(chuàng)建第二線程消息隊列指令分別創(chuàng)建第一線程消息隊列和第二線程消息隊列,并向窗口對象模塊2返回第一創(chuàng)建成功消息;

所述線程處理模塊4,用于根據創(chuàng)建主線程指令和創(chuàng)建子線程指令分別創(chuàng)建主線程和子線程,并向窗口對象模塊2返回第二創(chuàng)建成功消息。

通過創(chuàng)建第一線程消息隊列、第二線程消息隊列、主線程和子線程,能使主線程在第一線程消息隊列中保存排序,能使子線程在第二線程消息隊列中保存排序,充分實現主線程和子線程進行并行處理;線程處理模塊能對主線程和子線程統(tǒng)一管理,使得管理簡單而統(tǒng)一,提升穩(wěn)定性。

上述實施例中,所述線程處理模塊4創(chuàng)建主線程和子線程過程中分別向主線程和子線程中植入智能指針;

主線程和子線程中植入智能指針,通過智能指針能保證主線程和子線程能相對自動處理,使得運行更加流暢和快速。

實施例2:

如圖1所示,一種多線程處理系統(tǒng),包括多線程創(chuàng)建系統(tǒng)及其創(chuàng)建的第一線程消息隊列、第二線程消息隊列、主線程和子線程;

所述接口模塊1,用于接收外部的操作指令,傳輸至窗口對象模塊2;還用于對第一處理結果傳輸至外部進行顯示;還用于對第二處理結果傳輸至外部進行顯示;

所述窗口對象模塊2,用于對操作指令所要求執(zhí)行的任務進行判斷,當判斷所要執(zhí)行的任務需要在線程處理時,提取對應主線程傳輸至線程消息隊列模塊3,并生成第一處理結果返回接口模塊1;

所述線程消息隊列模塊3,用于將主線程放入第一線程消息隊列進行保存和排序;

所述線程處理模塊4,用于讀取第一線程消息隊列內的主線程,通過主線程進行處理,調取資源執(zhí)行對應任務,完成任務時向接口模塊1返回第二處理結果;完成任務后將子線程放入第二線程消息隊列中,通過子線程清除主線程調取的資源,清除窗口對象。

能使主線程在第一線程消息隊列中保存排序,能使子線程在第二線程消息隊列中保存排序,充分實現主線程和子線程進行并行處理;線程處理模塊4能對主線程和子線程統(tǒng)一管理,使得管理簡單而統(tǒng)一,提升穩(wěn)定性,能減少臨界區(qū),改善程序的流程性,提高用戶體驗,線程的處理規(guī)范化,也可以保證系統(tǒng)穩(wěn)定性。

上述實施例中,所述窗口對象模塊2對操作指令所要求執(zhí)行的任務進行判斷,當所要執(zhí)行的任務延時或者執(zhí)行任務所用的資源只是在線程中,則所要執(zhí)行的任務需要在線程處理。

窗口對象模塊2對操作指令所要求執(zhí)行的任務進行判斷,能提升對延時高的任務或者所用的資源只是在線程中的任務進行高效處理,能對減少臨界區(qū),改善程序的流程性,提高用戶體驗,線程的處理規(guī)范化,也可以保證系統(tǒng)穩(wěn)定性。

上述實施例中,所述接口模塊1,用于根據第一處理結果生成清理窗口指令,傳輸至窗口對象模塊2;還用對清理結束信號進行顯示;

所述窗口對象模塊2,用于根據清理窗口指令調取子線程傳輸至線程消息隊列模塊3;還用于根據第三處理結果通過主線程隱藏窗體對象;還用于根據第四處理結果清理窗體對象,向接口模塊1返回清理結束信號;

所述線程消息隊列模塊3,用于將子線程放入第二線程消息隊列進行保存和排序,生成第三處理結果返回窗口對象模塊2;

所述線程處理模塊4,用于讀取第二線程消息隊列中的子線程,清除主線程調取的資源,同時關閉子線程;完成任務時向窗口對象模塊2返回第四處理結果;

要清理窗體的時候,主線程隱藏這個窗體,然后給這個窗體的子線程一個退出的消息;這樣,就實現“偽刪除窗體過程”的過程;當子線程退出后,發(fā)送消息給主線程,這時,主線程才開始真正清理窗體,因不用等待高延時的子線程,所以該過程是非常快的。

子線程的清理過程與主線程是并行,異步的;用戶清理任務只是將窗體隱藏,然后資源清理用子線程處理,子線程得到充分的利用,而又不影響主線程工作;使得釋放變動非常流暢和快速。

上述實施例中,所述線程處理模塊4還用于調取主線程,主線程根據第四處理結果清理清理窗體對象;主線程的清理過程能與子線程的清理過程異步并行處理,使得釋放變動非常流暢和快速。

實施例3:

如圖2所示,一種多線程創(chuàng)建方法,包括以下步驟:

步驟A1.接收外部的窗體對象指令,根據窗體對象指令生成窗體對象,同時分別生成創(chuàng)建第一線程消息隊列指令、創(chuàng)建第二線程消息隊列指令、創(chuàng)建主線程指令和創(chuàng)建子線程指令;

步驟A2.根據創(chuàng)建第一線程消息隊列指令和創(chuàng)建第二線程消息隊列指令分別創(chuàng)建第一線程消息隊列和第二線程消息隊列,并返回第一創(chuàng)建成功消息;根據創(chuàng)建主線程指令和創(chuàng)建子線程指令分別創(chuàng)建主線程和子線程,并返回第二創(chuàng)建成功消息;

步驟A3.根據第一創(chuàng)建成功消息和第二創(chuàng)建成功消息輸出窗體對象,將窗體對象傳輸至外部進行顯示。

通過創(chuàng)建第一線程消息隊列、第二線程消息隊列、主線程和子線程,能使主線程在第一線程消息隊列中保存排序,能使子線程在第二線程消息隊列中保存排序,充分實現主線程和子線程進行并行處理;能對主線程和子線程統(tǒng)一管理,使得管理簡單而統(tǒng)一,提升穩(wěn)定性。

上述實施例中,在步驟A2中,創(chuàng)建主線程和子線程過程中分別向主線程和子線程中植入智能指針;主線程和子線程中植入智能指針,通過智能指針能保證主線程和子線程能相對自動處理,使得運行更加流暢和快速。

實施例4:

如圖3所示,一種多線程處理方法,包括以下步驟:

步驟B1.接收外部的操作指令,對操作指令所要求執(zhí)行的任務進行判斷,當判斷所要執(zhí)行的任務需要在線程處理時,提取對應主線程傳輸至第一線程消息隊列,并生成第一處理結果傳輸至外部進行顯示;

步驟B2.將主線程放入第一線程消息隊列進行保存和排序;

步驟B3.讀取第一線程消息隊列內的主線程,通過主線程進行處理,調取資源執(zhí)行對應任務,完成任務時返回第二處理結果傳輸至外部進行顯示;完成任務后還清除主線程調取的資源,清除窗口對象。

能使主線程在第一線程消息隊列中保存排序,能使子線程在第二線程消息隊列中保存排序,充分實現主線程和子線程進行并行處理;能對主線程和子線程統(tǒng)一管理,使得管理簡單而統(tǒng)一,提升穩(wěn)定性,能減少臨界區(qū),改善程序的流程性,提高用戶體驗,線程的處理規(guī)范化,也可以保證系統(tǒng)穩(wěn)定性。

上述實施例中,步驟B1中對操作指令所要求執(zhí)行的任務進行判斷,當所要執(zhí)行的任務延時或者執(zhí)行任務所用的資源只是在線程中,則所要執(zhí)行的任務需要在線程處理;對操作指令所要求執(zhí)行的任務進行判斷,能提升對延時高的任務或者所用的資源只是在線程中的任務進行高效處理,能對減少臨界區(qū),改善程序的流程性,提高用戶體驗,線程的處理規(guī)范化,也可以保證系統(tǒng)穩(wěn)定性。

以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
遵义市| 四川省| 奉新县| 武胜县| 天镇县| 甘孜| 海林市| 巴林左旗| 崇礼县| 旬阳县| 凤庆县| 金堂县| 白玉县| 内江市| 石门县| 永州市| 福海县| 金沙县| 新巴尔虎左旗| 浙江省| 阿克| 苍南县| 余干县| 德昌县| 南充市| 广水市| 会泽县| 巧家县| 贵定县| 绩溪县| 金山区| 隆化县| 新郑市| 宁安市| 扬州市| 福州市| 阳城县| 图木舒克市| 伊吾县| 辛集市| 喀喇|