本發明專利技術提供一種啟動插件的方法及裝置。一種啟動插件的方法,包括:主進程在確定需要調用插件進程對應的插件之前,啟動所述插件進程;所述主進程在調用所述插件時,將所述插件加載到所述插件進程,以使所述插件進程運行所述插件。本發明專利技術能夠減少啟動插件的時間。
Method and device for starting plug-in unit
The invention provides a method and a device for starting a plug-in unit. The method includes, a plug-in startup: before the main process in determining the need to call the process corresponding to the plug-in plug-in, the plug-in startup process; the main process in the call of the plug-in, loading the plug-in to the plug-in process, so that the operation process of the plug-in plug-in. The invention can reduce the time of starting the plug-in.
【技術實現步驟摘要】
啟動插件的方法及裝置
本專利技術涉及計算機領域,尤其涉及一種啟動插件的方法及裝置。
技術介紹
宿主程序是用于供插件運行的載體,同時也指定了插件的接入規范。插件是一種程序模塊,即是指符合服務平臺的接入規范,能夠運行于服務平臺的,并且非服務平臺本身所必須的功能或者業務模塊。現有技術中,插件與宿主程序可以運行于不同的進程中,即插件可以運行于插件進程中,宿主程序可以運行于主進程中。為了避免在宿主程序啟動時,需要加載所有的插件而導致內存占用較大,提出了一種啟動插件的方法:運行插件內核管理器,將插件描述文件存儲的調用插件所需信息在所述插件內核管理器內進行注冊;調用插件時,根據所述插件在所述插件內核管理器內的注冊信息加載相關插件。上述現有技術方案通過插件內核管理器來管理插件的相關信息,只有在實際需要插件時才將插件加載到內存中,這樣就減小了內存的開銷,提高了計算機內存的使用效率。但是,現有技術中在實際運行時,需要選擇待調用的插件,之后啟動該插件對應的插件進程,并在該插件進程啟動完畢之后,再加載該插件,存在插件啟動較慢的問題。
技術實現思路
本專利技術提供一種啟動插件的方法及裝置,用以解決現有技術中插件啟動較慢的問題。本專利技術提供一種啟動插件的方法,包括:主進程在確定需要調用插件進程對應的插件之前,啟動所述插件進程;所述主進程在調用所述插件時,將所述插件加載到所述插件進程,以使所述插件進程運行所述插件。在本專利技術一實施例中,所述主進程啟動所述插件進程,包括:所述主進程的第一線程向所述插件進程對應的所述主進程的第二線程發送通知消息,所述通知消息用于指示啟動所述插件進程;所述主進程的第二線程根據所述通知消息啟動所述插件進程。在本專利技術一實施例中,所述通知消息為廣播消息;所述主進程的第一線程向所述插件進程對應的所述主進程的第二線程發送通知消息,包括:所述主進程的第一線程向多個線程發送所述廣播消息,所述多個線程分別與多個插件進程對應,所述多個線程包括所述第二線程。在本專利技術一實施例中,所述主進程在調用所述插件時,將所述插件加載到所述插件進程之前,還包括:所述主進程根據用戶輸入,確定所述用戶選擇所述插件對應的插件入口,并根據所述插件入口確定調用所述插件。在本專利技術一實施例中,所述主進程在調用所述插件時,將所述插件加載到所述插件進程,包括:所述主進程在調用所述插件時,對所述插件進行初始化,并將所述插件加載到所述插件進程。本專利技術提供一種啟動插件的裝置,所述裝置應用于主進程,所述裝置包括:第一處理模塊,用于在確定需要調用插件進程對應的插件之前,啟動所述插件進程;第二處理模塊,用于在調用所述插件時,將所述插件加載到所述插件進程,以使所述插件進程運行所述插件。在本專利技術一實施例中,所述第一處理模塊包括第一線程處理模塊和第二線程處理模塊;其中,所述第一線程處理模塊,用于向所述插件進程對應的所述第二線程處理模塊發送通知消息,所述通知消息用于指示啟動所述插件進程;所述第二線程處理模塊,用于根據所述通知消息啟動所述插件進程。在本專利技術一實施例中,所述通知消息為廣播消息;所述第一線程處理模塊,具體用于:向多個線程處理模塊發送所述廣播消息,所述多個線程處理模塊分別與多個插件進程對應,所述多個線程處理模塊包括所述第二線程處理模塊。在本專利技術一實施例中,所述裝置還包括:第三處理模塊,用于根據用戶輸入,確定所述用戶選擇所述插件對應的插件入口,并根據所述插件入口確定調用所述插件。在本專利技術一實施例中,所述第二處理模塊,具體用于在調用所述插件時,對所述插件進行初始化,并將所述插件加載到所述插件進程。本專利技術提供一種啟動插件的方法及裝置;通過主進程在確定需要調用插件進程對應的插件之前,啟動所述插件進程;使得在主進程調用所述插件進程對應的插件時,不需要執行啟動所述插件進程的操作;因此,減少了插件啟動的時間。附圖說明為了更清楚地說明本專利技術實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本專利技術的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。圖1為本專利技術啟動插件的方法實施例一的流程圖;圖2為本專利技術啟動插件的方法實施例二的流程圖;圖3為本專利技術啟動插件的裝置實施例一的結構示意圖;圖4為本專利技術啟動插件的裝置實施例二的結構示意圖。具體實施方式為使本專利技術實施例的目的、技術方案和優點更加清楚,下面將結合本專利技術實施例中的附圖,對本專利技術實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本專利技術一部分實施例,而不是全部的實施例。基于本專利技術中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本專利技術保護的范圍。圖1為本專利技術啟動插件的方法實施例一的流程圖;如圖1所示,本實施例的方法可以包括:步驟101、主進程在確定需要調用插件進程對應的插件之前,啟動所述插件進程;步驟102、所述主進程在調用所述插件時,將所述插件加載到所述插件進程,以使所述插件進程運行所述插件。現有技術中,主進程在調用一插件進程對應的插件時,啟動該插件進程、將該插件加載到該插件進程,以使該插件運行在該插件進程中,從而完成該插件的啟動。本專利技術中,主進程在確定需要調用插件進程對應的插件之前,啟動所述插件進程;所述主進程在調用所述插件進程時,將所述插件加載到所述插件進程,以使所述插件進程運行所述插件。現有技術中,由于主進程在調用一插件進程對應的插件時,才啟動該插件進程,并在啟動該插件進程之后才加載插件,從而完成插件的啟動;而啟動插件進程需要一定的時間,因此存在插件啟動較慢的問題。本專利技術中,通過主進程在確定需要調用插件進程對應的插件之前,啟動所述插件進程;使得在主進程調用所述插件進程對應的插件時,不需要執行啟動所述插件進程的操作;因此,減少了插件啟動的時間。圖2為本專利技術啟動插件的方法實施例二的流程圖;如圖2所示,本實施例的方法可以包括:步驟201、主進程在確定需要調用插件進程對應的插件之前,啟動所述插件進程;可選的,步驟201具體可以為:所述主進程的第一線程向所述插件進程對應的所述主進程的第二線程發送通知消息,所述通知消息用于指示啟動所述插件進程;所述主進程的第二線程根據所述通知消息啟動所述插件進程。可選的,所述通知消息可以為廣播消息;相應的,所述主進程的第一線程向所述插件進程對應的所述主進程的第二線程發送通知消息,包括:所述主進程的第一線程向多個線程發送所述廣播消息,所述多個線程分別與多個插件進程對應,所述多個線程包括所述第二線程。其中,所述廣播消息的內容可以為空,即僅通過所述廣播消息的消息頭進行指示。可選的,所述主進程可以確定需要調用插件進程對應的插件之前的任何時間點啟動所述插件進程;例如,可以在所述主進程初始化之后,立即啟動所述插件進程;或者,在所述主進程的初始化過程中啟動所述插件進行。步驟202、所述主進程根據用戶輸入,確定需要進行跳轉處理;需要說明的是,所述跳轉處理的可以由插件進程進行(也即,由主進程跳轉至插件進程),或者也可以由主進程進行(也即,在主進程內進行跳轉處理)。步驟203、所述主進程判斷所述跳轉處理是否由插件進程進行;若是,則執行步驟本文檔來自技高網...

【技術保護點】
一種啟動插件的方法,其特征在于,包括:主進程在確定需要調用插件進程對應的插件之前,啟動所述插件進程;所述主進程在調用所述插件時,將所述插件加載到所述插件進程,以使所述插件進程運行所述插件。
【技術特征摘要】
1.一種啟動插件的方法,其特征在于,包括:主進程在確定需要調用插件進程對應的插件之前,啟動所述插件進程;所述主進程在調用所述插件時,將所述插件加載到所述插件進程,以使所述插件進程運行所述插件。2.根據權利要求1所述的方法,其特征在于,所述主進程啟動所述插件進程,包括:所述主進程的第一線程向所述插件進程對應的所述主進程的第二線程發送通知消息,所述通知消息用于指示啟動所述插件進程;所述主進程的第二線程根據所述通知消息啟動所述插件進程。3.根據權利要求2所述的方法,其特征在于,所述通知消息為廣播消息;所述主進程的第一線程向所述插件進程對應的所述主進程的第二線程發送通知消息,包括:所述主進程的第一線程向多個線程發送所述廣播消息,所述多個線程分別與多個插件進程對應,所述多個線程包括所述第二線程。4.根據權利要求1所述的方法,其特征在于,所述主進程在調用所述插件時,將所述插件加載到所述插件進程之前,還包括:所述主進程根據用戶輸入,確定所述用戶選擇所述插件對應的插件入口,并根據所述插件入口確定調用所述插件。5.根據權利要求1-4任一項所述的方法,其特征在于,所述主進程在調用所述插件時,將所述插件加載到所述插件進程,包括:所述主進程在調用所述插件時,對所述插件進行初始化,并將所述插件加載...
【專利技術屬性】
技術研發人員:李曉梅,
申請(專利權)人:五八同城信息技術有限公司,
類型:發明
國別省市:天津,12
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。