The anomaly detection method, the invention discloses a software development process is the main process of the main steps: at the start of the start at the same time daemon, and create a global mutex only; daemon timing detection global mutex if there does not exist, then restart the main process, the main process is time to send a message to ask the main process of the working state of the main process and determine whether the received response within a set time, if the received response the main process of the normal working condition, the daemon to keep asking if the timing; within a set time has not received the master process response, continue to send a query message timing master process, if the last n have not received the master process in response, n is a natural number, or receive the main process of working state of abnormal response, daemon kill and restart the main process, the main process. This method can not only ensure that the main process exits, it will restart the main process immediately, but also can solve the problem that the thread of the main process hangs or runs abnormally, which can not work properly.
【技術實現步驟摘要】
一種軟件開發中主進程異常檢測方法
本專利技術屬于計算機數據處理
,特別涉及一種軟件開發中進程異常的檢測方法。
技術介紹
軟件開發中經常需要維持某個進程(比如服務器進程)長期穩定地工作,但是不可避免地經常會出現進程異常退出的問題。為了解決這個問題,目前軟件開發時采用的方法是利用一個守護進程一直看護主進程,如圖1所示,守護進程定時掃描主進程是否存在,如果主進程不存在,就重新啟動主進程。但是,目前的看護方式存在著不足,如果主進程不是退出,而是線程掛起(程序死掉)或運行異常,守護進程認為程序沒有退出,誤以為還在正常工作,而實際上主進程已經異常出錯,也即,現有的主進程看護方式無法解決這類實際存在的問題,有待改進。
技術實現思路
本專利技術的目的,在于提供一種軟件開發中主進程異常檢測方法,其不但可以保證主進程退出時立即重啟主進程,更可以解決主進程的線程掛起或運行異常導致無法正常工作的問題。為了達成上述目的,本專利技術的解決方案是:一種軟件開發中主進程異常檢測方法,包括如下步驟:步驟1,主進程在啟動時,同時啟動守護進程守護其運行,并創建一個唯一的全局互斥體;步驟2,守護進程定時檢測主進程的全局互斥體是否存在,若存在則轉步驟3,若不存在則守護進程重新啟動主進程;步驟3,守護進程定時向主進程發送消息,詢問主進程的工作狀態,守護進程向主進程發送消息后,判斷在設定時間內是否收到主進程應答,若收到主進程工作狀態正常的應答,表示主進程工作狀態正常,守護進程繼續保持定時詢問;若在設定時間內未收到主進程應答,繼續定時向主進程發送詢問消息,如果持續n次都未收到主進程應答,n為自然數,或 ...
【技術保護點】
一種軟件開發中主進程異常檢測方法,其特征在于包括如下步驟:步驟1,主進程在啟動時,同時啟動守護進程守護其運行,并創建一個唯一的全局互斥體;步驟2,守護進程定時檢測主進程的全局互斥體是否存在,若存在則轉步驟3,若不存在則守護進程重新啟動主進程;步驟3,守護進程定時向主進程發送消息,詢問主進程的工作狀態,守護進程向主進程發送消息后,判斷在設定時間內是否收到主進程應答,若收到主進程工作狀態正常的應答,表示主進程工作狀態正常,守護進程繼續保持定時詢問;若在設定時間內未收到主進程應答,繼續定時向主進程發送詢問消息,如果持續n次都未收到主進程應答,n為自然數,或收到主進程工作狀態異常的應答,則認為主進程當前工作狀態異常,守護進程殺掉主進程,并重新啟動主進程。
【技術特征摘要】
1.一種軟件開發中主進程異常檢測方法,其特征在于包括如下步驟:步驟1,主進程在啟動時,同時啟動守護進程守護其運行,并創建一個唯一的全局互斥體;步驟2,守護進程定時檢測主進程的全局互斥體是否存在,若存在則轉步驟3,若不存在則守護進程重新啟動主進程;步驟3,守護進程定時向主進程發送消息,詢問主進程的工作狀態,守護進程向主進程發送消息后,判斷在設定時間內是否收到主進程應答,若收到主進程工作狀態正常的應答,表示主進程工作狀態正常,守護進程繼續保持定時詢問;若在設定時間內未收到主進程應答,繼續定時向主進程發送詢問消息,如果持續n次都未收到主進程應答,n為自然數,或收到主進程工作狀態異常的應答,則認為主進程當前工作狀態異常,守護進程殺掉主進程,并重新啟動主進程。2.如權利要求1所述的一種軟件開發中主進程異常檢測方法,其特征在于:所述方法中,還設定...
【專利技術屬性】
技術研發人員:邱志斌,吳煒斌,涂高元,郭永興,陸云燕,陳雅賢,
申請(專利權)人:廈門天銳科技股份有限公司,
類型:發明
國別省市:福建,35
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。