網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法及裝置,在上述方法中,在第一線程首次啟動后,執(zhí)行第一線程將網(wǎng)絡(luò)攝像機(IPC)注冊并登錄至視頻綜合管理平臺,同時設(shè)置標(biāo)志信息;通過第一線程啟動一個或多個第二線程,并為一個或多個第二線程分配系統(tǒng)資源;執(zhí)行第一線程實時檢測標(biāo)志信息,并根據(jù)標(biāo)志信息確定是否觸發(fā)IPC重新登錄視頻綜合管理平臺并重新啟動一個或多個第三線程。根據(jù)本發(fā)明提供的技術(shù)方案,實現(xiàn)了即插即用、斷電異常發(fā)生后的自動連接以及斷網(wǎng)異常發(fā)生后的自動恢復(fù)。
【專利說明】網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法及裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及安全防衛(wèi)領(lǐng)域,具體而言,涉及一種網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法 及裝置。
【背景技術(shù)】
[0002] 網(wǎng)絡(luò)攝像機(IP Camera,簡稱為IPC)是一種結(jié)合傳統(tǒng)攝像機與網(wǎng)絡(luò)技術(shù)所產(chǎn)生的 新一代攝像機,它可以將影像通過網(wǎng)絡(luò)傳至目的地,并且遠(yuǎn)端的瀏覽者無需安裝任何專業(yè) 軟件,只要客戶端擁有標(biāo)準(zhǔn)的網(wǎng)絡(luò)瀏覽器(例如Microsoft IE或Netscape)或者與之配套 的客戶端軟件即可監(jiān)視其影像。網(wǎng)絡(luò)攝像機內(nèi)置有一個嵌入式芯片,采用嵌入式實時操作 系統(tǒng)。攝像機傳送過來的視頻信號經(jīng)過數(shù)字化處理后再由高效壓縮芯片進(jìn)行壓縮處理,最 終通過網(wǎng)絡(luò)總線傳送至管理服務(wù)平臺。網(wǎng)絡(luò)上的用戶可以直接運行瀏覽器或者客戶端軟件 觀看網(wǎng)絡(luò)攝像機或服務(wù)器上的圖像,同時授權(quán)用戶還可以控制攝像機云臺鏡頭的動作或?qū)?系統(tǒng)配置進(jìn)行操作。
[0003] 視頻綜合管理平臺(以下簡稱管理平臺)是一套以網(wǎng)絡(luò)為依托,管理各種安全防護 監(jiān)控設(shè)備,以應(yīng)用為核心的軟件系統(tǒng),便于接收IPC的注冊、調(diào)取IPC的視頻、接收IPC的報 警。
[0004] 相關(guān)技術(shù)中的技術(shù)方案僅能實現(xiàn)通過標(biāo)志位對多個線程停止,而無法實現(xiàn)多個線 程的重新啟動。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明提供了一種網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法及裝置,以至少解決相關(guān)技術(shù) 中僅能實現(xiàn)通過標(biāo)志位對多個線程停止,而無法實現(xiàn)多個線程的重新啟動的問題。
[0006] 根據(jù)本發(fā)明的一個方面,提供了一種網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法。
[0007] 根據(jù)本發(fā)明的網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法包括:在第一線程首次啟動后,執(zhí) 行第一線程將IPC注冊并登錄至視頻綜合管理平臺,同時設(shè)置標(biāo)志信息,其中,第一線程用 于啟動一個或多個第二線程并對一個或多個第二線程進(jìn)行管理,標(biāo)志信息用于表示IPC是 否需要重新登錄視頻綜合管理平臺;通過第一線程啟動一個或多個第二線程,并為一個或 多個第二線程分配系統(tǒng)資源,其中,每個第二線程均用于實現(xiàn)IPC與視頻綜合管理平臺之 間的特定功能并且每個第二線程在執(zhí)行過程中發(fā)生異常時對標(biāo)志信息進(jìn)行更改;執(zhí)行第一 線程實時檢測標(biāo)志信息,并根據(jù)標(biāo)志信息確定是否觸發(fā)IPC重新登錄視頻綜合管理平臺并 重新啟動一個或多個第三線程,其中,每個第三線程均用于實現(xiàn)IPC與視頻綜合管理平臺 之間的特定功能,一個或多個第三線程與一個或多個第二線程完全相同或者部分相同。
[0008] 優(yōu)選地,執(zhí)行第一線程實時檢測標(biāo)志信息,并根據(jù)標(biāo)志信息確定是否觸發(fā)IPC重 新登錄視頻綜合管理平臺包括:第一線程根據(jù)一個或多個第二線程對標(biāo)志信息的更改次數(shù) 判斷一個或多個第二線程中發(fā)生異常的線程個數(shù)是否超過預(yù)設(shè)閾值;如果是,則執(zhí)行第一 線程觸發(fā)IPC重新登錄視頻綜合管理平臺并重新啟動一個或多個第三線程。
[0009] 優(yōu)選地,當(dāng)一個或多個第二線程中發(fā)生異常的線程個數(shù)未超過預(yù)設(shè)閾值時,執(zhí)行 第一線程重新調(diào)整為一個或多個第二線程分配的系統(tǒng)資源。
[0010] 優(yōu)選地,執(zhí)行第一線程觸發(fā)IPC重新登錄視頻綜合管理平臺并重新啟動一個或多 個第三線程包括:通過第一線程將一個或多個第二線程停止,并釋放一個或多個第二線程 所占用的系統(tǒng)資源;重新執(zhí)行第一線程將IPC登錄至視頻綜合管理平臺,再次啟動一個或 多個第三線程并重新為再次啟動的一個或多個第三線程分配系統(tǒng)資源。
[0011] 優(yōu)選地,執(zhí)行第一線程重新調(diào)整為一個或多個第二線程分配的系統(tǒng)資源包括:執(zhí) 行第一線程繼續(xù)為一個或多個第二線程分配額外的系統(tǒng)資源;或者,執(zhí)行第一線程釋放當(dāng) 前已經(jīng)為一個或多個第二線程分配的系統(tǒng)資源,重新為一個或多個第二線程分配系統(tǒng)資 源。
[0012] 優(yōu)選地,標(biāo)志信息是全局的,由第一線程和一個或多個第二線程共享,共同修改標(biāo) J志肩、。
[0013] 根據(jù)本發(fā)明的另一方面,提供了一種網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新裝置。
[0014] 根據(jù)本發(fā)明的網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新裝置包括:設(shè)置模塊,用于執(zhí)行第一線 程將IPC注冊并登錄至視頻綜合管理平臺,同時設(shè)置標(biāo)志信息,其中,第一線程用于啟動一 個或多個第二線程并對一個或多個第二線程進(jìn)行管理,標(biāo)志信息用于表示IPC是否需要重 新登錄視頻綜合管理平臺;處理模塊,用于通過第一線程啟動一個或多個第二線程,并為一 個或多個第二線程分配系統(tǒng)資源,其中,每個第二線程均用于實現(xiàn)IPC與視頻綜合管理平 臺之間的特定功能并且每個第二線程在執(zhí)行過程中發(fā)生異常時對標(biāo)志信息進(jìn)行更改;確定 模塊,用于執(zhí)行第一線程實時檢測標(biāo)志信息,并根據(jù)標(biāo)志信息確定是否觸發(fā)IPC重新登錄 視頻綜合管理平臺并重新啟動一個或多個第三線程,其中,每個第三線程均用于實現(xiàn)IPC 與視頻綜合管理平臺之間的特定功能,一個或多個第三線程與一個或多個第二線程完全相 同或者部分相同。
[0015] 優(yōu)選地,確定模塊包括:判斷單元,用于第一線程根據(jù)一個或多個第二線程對標(biāo)志 信息的更改次數(shù)判斷一個或多個第二線程中發(fā)生異常的線程個數(shù)是否超過預(yù)設(shè)閾值;啟動 單元,用于執(zhí)行第一線程觸發(fā)IPC重新登錄視頻綜合管理平臺并重新啟動一個或多個第三 線程。
[0016] 優(yōu)選地,確定模塊還包括:調(diào)整單元,用于當(dāng)一個或多個第二線程中發(fā)生異常的 線程個數(shù)未超過預(yù)設(shè)閾值時,執(zhí)行第一線程重新調(diào)整為一個或多個第二線程分配的系統(tǒng)資 源。
[0017] 優(yōu)選地,啟動單元包括:停止子單元,用于通過第一線程將一個或多個第二線程停 止,并釋放一個或多個第二線程所占用的系統(tǒng)資源;啟動子單元,用于重新執(zhí)行第一線程將 IPC登錄至視頻綜合管理平臺,再次啟動一個或多個第三線程并重新為再次啟動的一個或 多個第三線程分配系統(tǒng)資源。
[0018] 優(yōu)選地,調(diào)整單元包括:第一調(diào)整子單元,用于執(zhí)行第一線程繼續(xù)為一個或多個第 二線程分配額外的系統(tǒng)資源;或者,第二調(diào)整子單元,用于執(zhí)行第一線程釋放當(dāng)前已經(jīng)為一 個或多個第二線程分配的系統(tǒng)資源,重新為一個或多個第二線程分配系統(tǒng)資源。
[0019] 通過本發(fā)明,采用在第一線程首次啟動后,執(zhí)行第一線程將IPC注冊并登錄至視 頻綜合管理平臺,同時設(shè)置標(biāo)志信息,第一線程用于啟動一個或多個第二線程并對一個或 多個第二線程進(jìn)行管理,標(biāo)志信息用于表示IPC是否需要重新登錄視頻綜合管理平臺;通 過第一線程啟動一個或多個第二線程,并為一個或多個第二線程分配系統(tǒng)資源,每個第二 線程均用于實現(xiàn)IPC與視頻綜合管理平臺之間的特定功能并且每個第二線程在執(zhí)行過程 中發(fā)生異常時對標(biāo)志信息進(jìn)行更改;執(zhí)行第一線程實時檢測標(biāo)志信息,并根據(jù)標(biāo)志信息確 定是否觸發(fā)IPC重新登錄視頻綜合管理平臺并重新啟動一個或多個第三線程,每個第三線 程均用于實現(xiàn)IPC與視頻綜合管理平臺之間的特定功能,一個或多個第三線程與一個或多 個第二線程完全相同或者部分相同,解決了相關(guān)技術(shù)中僅能實現(xiàn)通過標(biāo)志位對多個線程停 止,而無法實現(xiàn)多個線程的重新啟動的問題,進(jìn)而實現(xiàn)了即插即用、斷電異常發(fā)生后的自動 連接以及斷網(wǎng)異常發(fā)生后的自動恢復(fù)。
【專利附圖】
【附圖說明】
[0020] 此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā) 明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0021] 圖1是根據(jù)本發(fā)明實施例的網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法的流程圖;
[0022] 圖2是根據(jù)本發(fā)明優(yōu)選實施例的網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法的流程圖;
[0023] 圖3是根據(jù)本發(fā)明實施例的網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新裝置的結(jié)構(gòu)框圖;
[0024] 圖4是根據(jù)本發(fā)明優(yōu)選實施例的網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新裝置的結(jié)構(gòu)框圖。
【具體實施方式】
[0025] 下文中將參考附圖并結(jié)合實施例來詳細(xì)說明本發(fā)明。需要說明的是,在不沖突的 情況下,本申請中的實施例及實施例中的特征可以相互組合。
[0026] 圖1是根據(jù)本發(fā)明實施例的網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法的流程圖。如圖1所 示,該方法可以包括以下處理步驟:
[0027] 步驟S102 :在第一線程首次啟動后,執(zhí)行第一線程將IPC注冊并登錄至視頻綜合 管理平臺,同時設(shè)置標(biāo)志信息,其中,第一線程用于啟動一個或多個第二線程并對一個或多 個第二線程進(jìn)行管理,標(biāo)志信息用于表示IPC是否需要重新登錄視頻綜合管理平臺;
[0028] 步驟S104 :通過第一線程啟動一個或多個第二線程,并為一個或多個第二線程分 配系統(tǒng)資源,其中,每個第二線程均用于實現(xiàn)IPC與視頻綜合管理平臺之間的特定功能并 且每個第二線程在執(zhí)行過程中發(fā)生異常時對標(biāo)志信息進(jìn)行更改;
[0029] 步驟S106 :執(zhí)行第一線程實時檢測標(biāo)志信息,并根據(jù)標(biāo)志信息確定是否觸發(fā)IPC 重新登錄視頻綜合管理平臺并重新啟動一個或多個第三線程,其中,每個第三線程均用于 實現(xiàn)IPC與視頻綜合管理平臺之間的特定功能,一個或多個第三線程與一個或多個第二線 程完全相同或者部分相同。
[0030] 相關(guān)技術(shù)中,僅能實現(xiàn)通過標(biāo)志位對多個線程停止,而無法實現(xiàn)多個線程的重新 啟動。采用如圖1所示的方法,在第一線程首次啟動后,執(zhí)行第一線程將IPC注冊并登錄至 視頻綜合管理平臺(即推模式注冊),同時設(shè)置標(biāo)志信息,第一線程用于啟動一個或多個第 二線程并對一個或多個第二線程進(jìn)行管理,標(biāo)志信息用于表示IPC是否需要重新登錄視頻 綜合管理平臺;通過第一線程啟動一個或多個第二線程,并為一個或多個第二線程分配系 統(tǒng)資源,每個第二線程均用于實現(xiàn)IPC與視頻綜合管理平臺之間的特定功能并且每個第二 線程在執(zhí)行過程中發(fā)生異常時對標(biāo)志信息進(jìn)行更改;執(zhí)行第一線程實時檢測標(biāo)志信息,并 根據(jù)標(biāo)志信息確定是否觸發(fā)IPC重新登錄視頻綜合管理平臺并重新啟動一個或多個第三 線程,每個第三線程均用于實現(xiàn)IPC與視頻綜合管理平臺之間的特定功能,一個或多個第 三線程與一個或多個第二線程完全相同或者部分相同,解決了相關(guān)技術(shù)中僅能實現(xiàn)通過標(biāo) 志位對多個線程停止,而無法實現(xiàn)多個線程的重新啟動的問題,進(jìn)而實現(xiàn)了即插即用、斷電 異常發(fā)生后的自動連接以及斷網(wǎng)異常發(fā)生后的自動恢復(fù)。
[0031] 需要說明的是,第二線程和第三線程均是用于實現(xiàn)IPC與視頻綜合管理平臺之間 的特定功能(例如:在IPC和視頻綜合管理平臺之間維持心跳),只是在執(zhí)行第一線程觸發(fā) IPC重新登錄視頻綜合管理平臺后,需要重新啟動的各個線程可能與上次啟動的各個線程 完全相同,當(dāng)然也可能只是上次啟動的各個線程中的一部分。
[0032] 在優(yōu)選實施例中,本發(fā)明所提到的推模式注冊是指IPC主動向管理平臺發(fā)起注冊 請求,與其相對應(yīng)的模式被稱為拉模式注冊(即被動注冊)是指IPC等待平臺發(fā)起連接。在 雙方注冊完成后,便可以進(jìn)行交互,例如:管理平臺可以調(diào)取IPC的視頻,可以查看IPC的錄 像文件,可以接收IPC的報警,可以對IPC發(fā)送各種指令,可以包括:布防、撤防、重新啟動。
[0033] 線程,有時也被稱為輕量級進(jìn)程(Lightweight Process,簡稱為LWP)是程序執(zhí)行 流的最小單元。為實現(xiàn)某項功能而無限循環(huán)或有限執(zhí)行的程序?qū)嶓w,可以被生成,也可以被 注銷,還可以自動退出。在操作系統(tǒng)中,每個線程均有與之對應(yīng)的標(biāo)識信息,例如:IPC在向 管理平臺注冊成功以后,可以啟動一個線程,循環(huán)接收管理平臺的命令并執(zhí)行相應(yīng)地操作, 還可以啟動一個線程,檢測自身的報警狀況,并在發(fā)生報警時將信息上傳至管理平臺。
[0034] IPC報警,即IPC對事件的檢測,可以由硬件來實現(xiàn),例如:開關(guān)量閉合,即兩根導(dǎo) 線連接在一起,也可以由軟件實現(xiàn),例如:通過軟件檢測到畫面中有移動現(xiàn)象發(fā)生。
[0035] 優(yōu)選地,在步驟S106中,執(zhí)行第一線程實時檢測標(biāo)志信息,并根據(jù)標(biāo)志信息確定 是否觸發(fā)IPC重新登錄視頻綜合管理平臺可以包括以下步驟:
[0036] 步驟S1 :第一線程根據(jù)一個或多個第二線程對標(biāo)志信息的更改次數(shù)判斷一個或 多個第二線程中發(fā)生異常的線程個數(shù)是否超過預(yù)設(shè)閾值;
[0037] 步驟S2 :如果是,則執(zhí)行第一線程觸發(fā)IPC重新登錄視頻綜合管理平臺并重新啟 動一個或多個第三線程。
[0038] 在優(yōu)選實施例中,第一線程可以實時對運行狀態(tài)的變更進(jìn)行統(tǒng)計,例如:當(dāng)前啟動 100個第二線程,登錄狀態(tài)更新的預(yù)設(shè)閾值為30個第二線程發(fā)生故障,如果在發(fā)生第一次 異常(斷電或者斷網(wǎng))時,斷開連接的第二線程對標(biāo)志信息的更改次數(shù)為40次,由此可以得 到受到影響的第二線程占線程總數(shù)的40% (40個),此時發(fā)生異常的線程數(shù)量已經(jīng)超過預(yù)設(shè) 閾值,因此,需要觸發(fā)IPC重新登錄至視頻綜合管理平臺。
[0039] 優(yōu)選地,上述方法還可以包括:
[0040] 步驟S3 :當(dāng)一個或多個第二線程中發(fā)生異常的線程個數(shù)未超過預(yù)設(shè)閾值時,執(zhí)行 第一線程重新調(diào)整為一個或多個第二線程分配的系統(tǒng)資源。
[0041] 在優(yōu)選實施例中,第一線程可以實時對運行狀態(tài)的變更進(jìn)行統(tǒng)計,例如:當(dāng)前啟動 100個第二線程,登錄狀態(tài)更新的預(yù)設(shè)閾值為30個第二線程發(fā)生故障,如果在發(fā)生第一次 異常(斷電或者斷網(wǎng))時,假設(shè)斷開連接的第二線程對標(biāo)志信息的更改次數(shù)為10次,由此可 以得到受到影響的第二線程僅占線程總數(shù)的10% (10個),那么此時無需觸發(fā)IPC重新登錄 至視頻綜合管理平臺,而只需要將發(fā)生故障的10個線程所占用的系統(tǒng)資源調(diào)整給其他正 常工作的線程進(jìn)行使用。
[0042] 在該優(yōu)選實施例中,可以僅將登錄狀態(tài)設(shè)置成兩個級別,例如:0級表示正常執(zhí) 行;1級表示重新觸發(fā)IPC登錄至視頻綜合管理平臺;當(dāng)然也可以將運行狀態(tài)設(shè)置成多個級 另IJ,例如:〇級表示正常執(zhí)行;1級表示重新調(diào)整已經(jīng)分配的系統(tǒng)資源;2級表示重新登錄、 重新分配資源,還要重新啟動一個或多個第二線程。
[0043] 優(yōu)選地,在步驟S2中,執(zhí)行第一線程觸發(fā)IPC重新登錄視頻綜合管理平臺并重新 啟動一個或多個第三線程可以包括以下操作:
[0044] 步驟S21 :通過第一線程將一個或多個第二線程停止,并釋放一個或多個第二線 程所占用的系統(tǒng)資源;
[0045] 步驟S22 :重新執(zhí)行第一線程將IPC登錄至視頻綜合管理平臺,再次啟動一個或多 個第三線程并重新為再次啟動的一個或多個第三線程分配系統(tǒng)資源。
[0046] 線程釋放資源是指線程在執(zhí)行時,可能會根據(jù)需要產(chǎn)生占用內(nèi)存,修改一些系統(tǒng) 參數(shù)值等動作,因此,當(dāng)線程退出時,采取的釋放內(nèi)存、恢復(fù)系統(tǒng)值的動作,稱之為線程資源 釋放。該資源釋放操作可以在自動退出前由自身完成,也可以由其它線程在本線程完成操 作后執(zhí)行資源釋放操作。
[0047] 優(yōu)選地,在步驟S3中,執(zhí)行第一線程重新調(diào)整為一個或多個第二線程分配的系統(tǒng) 資源可以包括以下處理之一:
[0048] 處理一、執(zhí)行第一線程繼續(xù)為一個或多個第二線程分配額外的系統(tǒng)資源;
[0049] 處理二、執(zhí)行第一線程釋放當(dāng)前已經(jīng)為一個或多個第二線程分配的系統(tǒng)資源,重 新為一個或多個第二線程分配系統(tǒng)資源。
[0050] 在優(yōu)選實施過程中,上述標(biāo)志信息是全局的,由第一線程和一個或多個第二線程 共享,共同修改上述標(biāo)志信息。
[0051] 在優(yōu)選實施例中,第一線程可以對不同的第二線程分別設(shè)置多個標(biāo)志信息,例如: 1號和2號第二線程采用同一個標(biāo)志,3號第二線程采用一個標(biāo)志,4-N號第二線程采用一個 物?志。
[0052] 下面結(jié)合圖2所示的優(yōu)選實施方式對上述優(yōu)選實施過程做進(jìn)一步的描述。
[0053] 圖2是根據(jù)本發(fā)明優(yōu)選實施例的網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法的流程圖。如圖 2所示,該方法可以包括以下步驟 :
[0054] 步驟S202 :可以設(shè)置一個全局標(biāo)志信息,用以標(biāo)識IPC是否已經(jīng)注冊并登錄至管 理平臺;
[0055] 在優(yōu)選實施例中,在IPC啟動之后,需要先啟動一個主線程(即上述第一線程),該 線程負(fù)責(zé)如下功能:
[0056] 功能一、檢測全局標(biāo)志信息,將IPC注冊到管理平臺;
[0057] 功能二、注銷上次啟動的功能線程(即上述第二線程),并釋放資源;
[0058] 功能三、每次重新注冊成功后,重新分配資源,并再次啟動功能線程。
[0059] 主線程在第一次啟動之后,會檢測到功能線程還沒有啟動。于是,主線程先循環(huán)向 管理平臺進(jìn)行注冊,直至注冊成功;當(dāng)注冊成功后,主線程將啟動一個或多個功能線程,并 為上述一個或多個功能線程分配系統(tǒng)資源;
[0060] 步驟S204 :檢測全局標(biāo)志信息,判斷全局標(biāo)志信息是否為真,如果該標(biāo)志為真,則 繼續(xù)執(zhí)行步驟S206 ;如果該標(biāo)志為假,則轉(zhuǎn)到步驟S208 ;
[0061] 步驟S206 :表示IPC已經(jīng)注冊到管理平臺,并且各功能線程通信正常;
[0062] 在功能線程啟動之后,會去獨立執(zhí)行相關(guān)功能,例如:
[0063] (1)心跳線程會定時向管理平臺發(fā)送心跳消息;
[0064] 心跳在網(wǎng)絡(luò)通信中是指客戶端與服務(wù)器之間定時發(fā)送的一些維持連接的數(shù)據(jù),如 果在約定時間內(nèi)一方接收不到心跳數(shù)據(jù)就會斷開連接。在此種情況下,如果需要重新通信, 則需要連接方重新發(fā)起連接,待連接成功后,雙方再次一起維持心跳。
[0065] (2)接收消息的線程會一直監(jiān)聽并接收管理平臺發(fā)送的消息,也稱為命令,并做出 相應(yīng)的處理,如果接收到的是校時命令,IPC會根據(jù)管理平臺發(fā)送過來的時間參數(shù),改變其 自身的時間;如果接收到的是參數(shù)配置命令,IPC會去更改其參數(shù);
[0066] (3)上傳報警線程會在IPC發(fā)出報警后,將報警信息連同IPC發(fā)生報警時的圖片和 /或錄像上傳至管理平臺。
[0067] 步驟S208 :表示一個或多個功能線程與管理平臺之間的通信出現(xiàn)異常,需要IPC 對管理平臺進(jìn)行重新登錄;
[0068] 上述功能線程在具體執(zhí)行過程中可能會發(fā)生異常,最為常見的,例如:網(wǎng)絡(luò)斷開連 接,網(wǎng)絡(luò)連接斷開后,心跳線程將無法與管理平臺維持心跳,到達(dá)預(yù)設(shè)時長后就需要重新斷 開已有連接并開始嘗試重新登錄管理平臺。當(dāng)達(dá)到需要重新登錄的時間點后,心跳線程會 將已登錄管理平臺的標(biāo)志更改為假。那么,此時主線程就會檢測到需要重新登錄,同時還會 檢測到功能線程已經(jīng)開啟。于是主線程會停止功能線程并釋放資源,再循環(huán)登錄管理平臺, 直至登錄成功后,再次分配資源,重新啟動功能線程,如此以來,便完成了整個循環(huán)。
[0069] 在上述循環(huán)中,功能線程也會去檢測是否已經(jīng)登錄管理平臺這個全局標(biāo)志,如果 為真,則執(zhí)行各自的功能;如果為假,則線程空轉(zhuǎn),等待主線程將其退出,其中,線程空轉(zhuǎn)是 指在某些特殊情況下,僅會執(zhí)行sleep語句,即稱之為線程空轉(zhuǎn)。
[0070] 圖3是根據(jù)本發(fā)明實施例的網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新裝置的結(jié)構(gòu)框圖。如圖3 所示,該網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新裝置可以包括:設(shè)置模塊10,用于執(zhí)行第一線程將IPC 注冊并登錄至視頻綜合管理平臺,同時設(shè)置標(biāo)志信息,其中,第一線程用于啟動一個或多個 第二線程并對一個或多個第二線程進(jìn)行管理,標(biāo)志信息用于表示IPC是否需要重新登錄視 頻綜合管理平臺;處理模塊20,用于通過第一線程啟動一個或多個第二線程,并為一個或 多個第二線程分配系統(tǒng)資源,其中,每個第二線程均用于實現(xiàn)IPC與視頻綜合管理平臺之 間的特定功能并且每個第二線程在執(zhí)行過程中發(fā)生異常時對標(biāo)志信息進(jìn)行更改;確定模塊 30,用于執(zhí)行第一線程實時檢測標(biāo)志信息,并根據(jù)標(biāo)志信息確定是否觸發(fā)IPC重新登錄視 頻綜合管理平臺并重新啟動一個或多個第三線程,其中,每個第三線程均用于實現(xiàn)IPC與 視頻綜合管理平臺之間的特定功能,一個或多個第三線程與一個或多個第二線程完全相同 或者部分相同。
[0071] 采用如圖3所示的裝置,解決了相關(guān)技術(shù)中僅能實現(xiàn)通過標(biāo)志位對多個線程停 止,而無法實現(xiàn)多個線程的重新啟動的問題,進(jìn)而實現(xiàn)了即插即用、斷電異常發(fā)生后的自動 連接以及斷網(wǎng)異常發(fā)生后的自動恢復(fù)。
[0072] 優(yōu)選地,如圖4所示,確定模塊30可以包括:判斷單元300,用于第一線程根據(jù)一 個或多個第二線程對標(biāo)志信息的更改次數(shù)判斷一個或多個第二線程中發(fā)生異常的線程個 數(shù)是否超過預(yù)設(shè)閾值;啟動單元302,用于執(zhí)行第一線程觸發(fā)IPC重新登錄視頻綜合管理平 臺并重新啟動一個或多個第三線程。
[0073] 優(yōu)選地,如圖4所示,確定模塊30還可以包括:調(diào)整單元304,用于當(dāng)一個或多個 第二線程中發(fā)生異常的線程個數(shù)未超過預(yù)設(shè)閾值時,執(zhí)行第一線程重新調(diào)整為一個或多個 第二線程分配的系統(tǒng)資源。
[0074] 優(yōu)選地,啟動單元302可以包括:停止子單元(圖中未示出),用于通過第一線程將 一個或多個第二線程停止,并釋放一個或多個第二線程所占用的系統(tǒng)資源;啟動子單元(圖 中未示出),用于重新執(zhí)行第一線程將IPC登錄至視頻綜合管理平臺,再次啟動一個或多個 第三線程并重新為再次啟動的一個或多個第三線程分配系統(tǒng)資源。
[0075] 優(yōu)選地,調(diào)整單元304可以包括:第一調(diào)整子單元(圖中未示出),用于執(zhí)行第一線 程繼續(xù)為一個或多個第二線程分配額外的系統(tǒng)資源;或者,第二調(diào)整子單元(圖中未示出), 用于執(zhí)行第一線程釋放當(dāng)前已經(jīng)為一個或多個第二線程分配的系統(tǒng)資源,重新為一個或多 個第二線程分配系統(tǒng)資源。
[0076] 在優(yōu)選實施過程中,上述標(biāo)志信息是全局的,由第一線程和一個或多個第二線程 共享,共同修改上述標(biāo)志信息。
[0077] 從以上的描述中,可以看出,上述實施例實現(xiàn)了如下技術(shù)效果(需要說明的是這些 效果是某些優(yōu)選實施例可以達(dá)到的效果):(1)實現(xiàn)即插即用,客戶在購買設(shè)備后,只要上電 并連接上網(wǎng)線,設(shè)備就會自動向管理平臺發(fā)起注冊,客戶不需要對設(shè)備進(jìn)行任何操作,就可 以通過手機、電腦等查看設(shè)備圖像,接收設(shè)備報警等;(2)斷電異常發(fā)生后的自動連接,當(dāng) 發(fā)生異常停電后,設(shè)備會關(guān)閉,而在下次供電恢復(fù)后,設(shè)備將會自動運行并自動與服務(wù)器建 立連接,無需人工參與;(3)斷網(wǎng)異常發(fā)生后的自動恢復(fù),當(dāng)發(fā)生斷網(wǎng)后,設(shè)備可以通過心 跳消息檢測到,當(dāng)斷網(wǎng)超過一定時長后,設(shè)備會自動釋放資源并一直嘗試連接,只要網(wǎng)絡(luò)恢 復(fù)就能連接成功,期間還是無需人工參與。
[0078] 顯然,本領(lǐng)域的技術(shù)人員應(yīng)該明白,上述的本發(fā)明的各模塊或各步驟可以用通用 的計算裝置來實現(xiàn),它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成 的網(wǎng)絡(luò)上,可選地,它們可以用計算裝置可執(zhí)行的程序代碼來實現(xiàn),從而,可以將它們存儲 在存儲裝置中由計算裝置來執(zhí)行,并且在某些情況下,可以以不同于此處的順序執(zhí)行所示 出或描述的步驟,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或 步驟制作成單個集成電路模塊來實現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。
[0079] 以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技 術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修 改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1. 一種網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新方法,其特征在于,包括: 在第一線程首次啟動后,執(zhí)行所述第一線程將網(wǎng)絡(luò)攝像機IPC注冊并登錄至視頻綜合 管理平臺,同時設(shè)置標(biāo)志信息,其中,所述第一線程用于啟動一個或多個第二線程并對所述 一個或多個第二線程進(jìn)行管理,所述標(biāo)志信息用于表示所述IPC是否需要重新登錄所述視 頻綜合管理平臺; 通過所述第一線程啟動所述一個或多個第二線程,并為所述一個或多個第二線程分配 系統(tǒng)資源,其中,每個第二線程均用于實現(xiàn)所述IPC與所述視頻綜合管理平臺之間的特定 功能并且每個第二線程在執(zhí)行過程中發(fā)生異常時對所述標(biāo)志信息進(jìn)行更改; 執(zhí)行所述第一線程實時檢測所述標(biāo)志信息,并根據(jù)所述標(biāo)志信息確定是否觸發(fā)所述 IPC重新登錄所述視頻綜合管理平臺并重新啟動一個或多個第三線程,其中,每個第三線程 均用于實現(xiàn)所述IPC與所述視頻綜合管理平臺之間的特定功能,所述一個或多個第三線程 與所述一個或多個第二線程完全相同或者部分相同。
2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,執(zhí)行所述第一線程實時檢測所述標(biāo)志信 息,并根據(jù)所述標(biāo)志信息確定是否觸發(fā)所述IPC重新登錄所述視頻綜合管理平臺包括: 所述第一線程根據(jù)所述一個或多個第二線程對所述標(biāo)志信息的更改次數(shù)判斷所述一 個或多個第二線程中發(fā)生異常的線程個數(shù)是否超過預(yù)設(shè)閾值; 如果是,則執(zhí)行所述第一線程觸發(fā)所述IPC重新登錄所述視頻綜合管理平臺并重新啟 動所述一個或多個第三線程。
3. 根據(jù)權(quán)利要求2所述的方法,其特征在于,當(dāng)所述一個或多個第二線程中發(fā)生異常 的線程個數(shù)未超過所述預(yù)設(shè)閾值時,執(zhí)行所述第一線程重新調(diào)整為所述一個或多個第二線 程分配的所述系統(tǒng)資源。
4. 根據(jù)權(quán)利要求2所述的方法,其特征在于,執(zhí)行所述第一線程觸發(fā)所述IPC重新登錄 所述視頻綜合管理平臺并重新啟動所述一個或多個第三線程包括: 通過所述第一線程將所述一個或多個第二線程停止,并釋放所述一個或多個第二線程 所占用的所述系統(tǒng)資源; 重新執(zhí)行所述第一線程將所述IPC登錄至所述視頻綜合管理平臺,再次啟動一個或多 個第三線程并重新為所述再次啟動的一個或多個第三線程分配系統(tǒng)資源。
5. 根據(jù)權(quán)利要求3所述的方法,其特征在于,執(zhí)行所述第一線程重新調(diào)整為所述一個 或多個第二線程分配的所述系統(tǒng)資源包括: 執(zhí)行所述第一線程繼續(xù)為所述一個或多個第二線程分配額外的系統(tǒng)資源;或者, 執(zhí)行所述第一線程釋放當(dāng)前已經(jīng)為所述一個或多個第二線程分配的所述系統(tǒng)資源,重 新為所述一個或多個第二線程分配系統(tǒng)資源。
6. 根據(jù)權(quán)利要求1至5中任一項所述的方法,其特征在于,所述標(biāo)志信息是全局的,由 所述第一線程和所述一個或多個第二線程共享,共同修改所述標(biāo)志信息。
7. -種網(wǎng)絡(luò)攝像機登錄狀態(tài)的更新裝置,其特征在于,包括: 設(shè)置模塊,用于執(zhí)行第一線程將網(wǎng)絡(luò)攝像機IPC注冊并登錄至視頻綜合管理平臺,同 時設(shè)置標(biāo)志信息,其中,所述第一線程用于啟動一個或多個第二線程并對所述一個或多個 第二線程進(jìn)行管理,所述標(biāo)志信息用于表示所述IPC是否需要重新登錄所述視頻綜合管理 平臺; 處理模塊,用于通過所述第一線程啟動所述一個或多個第二線程,并為所述一個或多 個第二線程分配系統(tǒng)資源,其中,每個第二線程均用于實現(xiàn)所述IPC與所述視頻綜合管理 平臺之間的特定功能并且每個第二線程在執(zhí)行過程中發(fā)生異常時對所述標(biāo)志信息進(jìn)行更 改; 確定模塊,用于執(zhí)行所述第一線程實時檢測所述標(biāo)志信息,并根據(jù)所述標(biāo)志信息確定 是否觸發(fā)所述IPC重新登錄所述視頻綜合管理平臺并重新啟動一個或多個第三線程,其 中,每個第三線程均用于實現(xiàn)所述IPC與所述視頻綜合管理平臺之間的特定功能,所述一 個或多個第三線程與所述一個或多個第二線程完全相同或者部分相同。
8. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述確定模塊包括: 判斷單元,用于所述第一線程根據(jù)所述一個或多個第二線程對所述標(biāo)志信息的更改次 數(shù)判斷所述一個或多個第二線程中發(fā)生異常的線程個數(shù)是否超過預(yù)設(shè)閾值; 啟動單元,用于執(zhí)行所述第一線程觸發(fā)所述IPC重新登錄所述視頻綜合管理平臺并重 新啟動所述一個或多個第三線程。
9. 根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述確定模塊還包括: 調(diào)整單元,用于當(dāng)所述一個或多個第二線程中發(fā)生異常的線程個數(shù)未超過所述預(yù)設(shè)閾 值時,執(zhí)行所述第一線程重新調(diào)整為所述一個或多個第二線程分配的所述系統(tǒng)資源。
10. 根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述啟動單元包括: 停止子單元,用于通過所述第一線程將所述一個或多個第二線程停止,并釋放所述一 個或多個第二線程所占用的所述系統(tǒng)資源; 啟動子單元,用于重新執(zhí)行所述第一線程將所述IPC登錄至所述視頻綜合管理平臺, 再次啟動一個或多個第三線程并重新為所述再次啟動的一個或多個第三線程分配系統(tǒng)資 源。
11. 根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述調(diào)整單元包括: 第一調(diào)整子單元,用于執(zhí)行所述第一線程繼續(xù)為所述一個或多個第二線程分配額外的 系統(tǒng)資源;或者, 第二調(diào)整子單元,用于執(zhí)行所述第一線程釋放當(dāng)前已經(jīng)為所述一個或多個第二線程分 配的所述系統(tǒng)資源,重新為所述一個或多個第二線程分配系統(tǒng)資源。
【文檔編號】G06F9/46GK104065626SQ201310093597
【公開日】2014年9月24日 申請日期:2013年3月21日 優(yōu)先權(quán)日:2013年3月21日
【發(fā)明者】韓迎春 申請人:杭州??低晹?shù)字技術(shù)股份有限公司