如圖1所示,是本發明手機圖片轉換系統較佳實施例的運行環境圖。該手機圖片轉換系統100獨立運行於手機1的一個圖片轉換程序101中,該程序中只運行該手機圖片轉換系統100。該手機1中還包括,但不限於:功能表顯示程序102。該手機1中還運行有多個應用程式103,所述應用程式包括:通話、簡訊、媒體庫、背景圖片顯示等。所述多個應用程式103用於向手機圖片轉換系統100發送圖片轉換請求,該手機圖片轉換系統100提供了多個雙端佇列來存儲所述圖片轉換請求,每個雙端佇列的優先權不同。本較佳實施例中,該手機圖片轉換系統100提供了4個雙端佇列。因為各個應用程式103的優先權不同,則應用程式103所對應的圖片轉換請求的優先權也不同。按照圖片轉換請求的優先權不同,將同等優先權的圖片轉換請求排列到一個雙端佇列中。例如:通話來電顯示的圖片轉換請求的優先權高於當前編輯的相簿中的圖片轉換請求的優先權,則將所述兩個圖片轉換請求分別排列在兩個雙端佇列中。所述圖片轉換程序101中設置有多個中斷檢查點,所述檢查點用於設置中斷標誌。
如圖2所示,是圖1中手機圖片轉換系統100的較佳實施例的功能模組圖。所述模組是具有特定功能的軟體程式段,該軟體存儲於電腦可讀存儲介質或其他存儲設備,可被電腦或其他包含處理器的計算裝置執行,從而完成手機圖片轉換的系列流程。所述手機圖片轉換系統100包括:圖片轉換請求新增模組10、圖片轉換請求刪除模組12、中斷模組14及圖片轉換模組16。
圖片轉換請求新增模組10用於接收多個應用程式103所發送的圖片轉換請求。根據所述圖片轉換請求所對應的應用程式103的優先權,選擇該圖片轉換請求需要插入的雙端佇列。
該圖片轉換請求新增模組10判斷所選擇的雙端佇列是否已滿。當所選擇的雙端佇列已滿,刪除該雙端佇列隊頭的圖片轉換請求,並通知該被刪除的圖片轉換請求所對應的應用程式103。當所選擇的雙端佇列已滿,將所接收的圖片轉換請求插入隊尾,並對該新增的圖片轉換請求生成一個唯一序號ID,並將該ID回傳給新增圖片轉換請求所對應的應用程式103。
該圖片轉換請求新增模組10還用於判斷當前是否有圖片轉換請求正在被所述圖片轉換模組16執行。若當前有圖片轉換請求正在被執行,則判斷新增的圖片轉換請求的優先權是否高於當前正在執行的圖片轉換請求。
中斷模組14用於當所新增的圖片轉換請求的優先權高於當前正在執行的圖片轉換請求時,中斷當前正在執行的圖片轉換工作,並在該被中斷的圖片轉換工作中的檢查點處設置中斷標誌,並在該圖片轉換請求中記錄該中斷動作的原因。該中斷模組14將該中斷的圖片轉換請求根據其優先權重新插入到對應的雙端佇列中。同時,該中斷模組14通知圖片轉換模組16執行新增的圖片轉換請求。
所述圖片轉換模組16用於依次從最高優先權的雙端佇列的隊尾取出圖片轉換請求,對該圖片轉換請求進行圖片轉換操作。在執行所述圖片轉換操作過程中,判斷檢查點是否有中斷標誌。若檢查點有中斷標誌,清除中斷標誌,繼續執行該圖片轉換請求。若檢查點沒有中斷標誌,繼續執行該圖片轉換請求。當執行完該圖片轉換請求後,將該執行結果回傳給該圖片轉換請求所對應的應用程式103。該圖片轉換模組16判斷所有雙端佇列中是否還存在未執行的圖片轉換請求。若至少一個雙端佇列中還存在未執行的圖片轉換請求,繼續從該雙端佇列的隊尾取出圖片轉換請求來執行。
圖片轉換請求刪除模組12用於接收應用程式103發送的要刪除的圖片轉換請求的ID。所述圖片轉換請求刪除模組12判斷正在執行的圖片轉換請求的ID是否與所要刪除的圖片轉換請求的ID相同。若不相同,該圖片轉換請求刪除模組12在所有雙端佇列中搜索,查看是否存在所述ID對應的圖片轉換請求。若存在一個雙端佇列中有所述圖片轉換請求,記錄該圖片轉換請求,等到該圖片轉換請求到達該雙端佇列的隊尾時,刪除該圖片轉換請求。若相同,中斷模組14中斷當前執行的圖片轉換請求,並將中斷結果及原因回傳給該圖片轉換請求所對應的應用程式103。
如圖3所示,是本發明手機圖片轉換方法較佳實施例的作業流程圖。
步驟S30,圖片轉換模組16按照雙端佇列優先權的高低順序從當前最高優先權的雙端佇列的隊尾中取出圖片轉換請求。
步驟S32,在執行所述取出的圖片轉換請求的同時,圖片轉換請求新增模組10判斷是否有新的圖片轉換請求進入雙端佇列。若存在新的圖片轉換請求進入雙端佇列,進入步驟S34;若沒有新的圖片轉換請求進入雙端佇列,進入步驟S40。
步驟S34,所述圖片轉換請求新增模組10判斷該新增的圖片轉換請求的優先權是否高於當前正在執行的圖片轉換請求的優先權。若新增的圖片轉換請求的優先權高於當前正在執行的圖片轉換請求,進入步驟S36;若所新增的圖片轉換請求的優先權低於或等於當前正在執行的圖片轉換請求,進入步驟S44。
步驟S36,所述中斷模組14在檢查點設置中斷標誌及記錄中斷原因,中斷當前執行的圖片轉換請求,並將該中斷的圖片轉換請求按照其優先權重新插入到對應的雙端佇列的隊尾。
步驟S38,圖片轉換模組16執行所述新增的圖片轉換請求。進入步驟S50。
步驟S40,圖片轉換請求刪除模組12判斷是否存在有應用程式103發送的刪除圖片轉換請求。若不存在,進入步驟S44;若存在,進入步驟S42。
步驟S42,所述圖片轉換請求刪除模組12刪除應用程式103所要刪除的圖片轉換請求。
步驟S44,繼續執行當前執行的圖片轉換請求。
步驟S46,圖片轉換模組16判斷當前執行的圖片轉換請求工作中檢查點是否有中斷標誌。若檢查點存在中斷標誌,進入步驟S48;若檢查點不存在中斷標誌,則將該圖片轉換請求執行完成後,進入步驟S50。
步驟S48,圖片轉換模組16清除檢查點的中斷標誌,繼續完成該圖片轉換請求。
步驟S50,該圖片轉換模組16判斷所有雙端佇列中是否還存在未執行的圖片轉換請求。若至少一個雙端佇列中還存在未執行的圖片轉換請求,轉至步驟S30。若所有雙端佇列中都不存在有未執行的圖片轉換請求,結束流程。
如圖4所示,是新增圖片轉換請求的較佳實施例的作業流程圖。
步驟S320,根據所接收的新增圖片轉換請求的優先權選擇相應的雙端佇列。
步驟S321,判斷所選擇的雙端佇列是否已滿。若所述雙端佇列已滿,進入步驟S322;若所述雙端佇列沒滿,進入步驟S323。
步驟S322,從該雙端佇列的隊頭刪除一個圖片轉換請求,進入步驟S323。
步驟S323,將所述新增的圖片轉換請求插入該選擇的雙端佇列。
步驟S324,生成一個唯一序號ID給該入隊的圖片轉換請求,並將該ID回傳給該圖片轉換請求對應的應用程式103。
步驟S325,判斷所新增的圖片轉換請求的優先權是否高於當前正在執行的圖片轉換請求的優先權。若所接收的圖片轉換請求的優先權高於當前正在執行的圖片轉換請求的優先權,則進入步驟S326。若所接收的圖片轉換請求的優先權低於或等於當前正在執行的圖片轉換請求的優先權,結束流程。
步驟S326,通知圖片轉換模組16轉換新增的圖片轉換請求,結束流程。
如圖5所示,是刪除圖片轉換請求的較佳實施例的作業流程圖。
步驟S500,應用程式103發送要刪除的圖片轉換請求的ID。
步驟S502,所述圖片轉換請求刪除模組12判斷正在執行的圖片轉換請求的ID是否與所要刪除的圖片轉換請求的ID相同。若相同,進入步驟S504;若不相同,進入步驟S506。
步驟S504,中斷模組14中斷當前正在執行的圖片轉換請求,並將該中斷結果及中斷原因回傳給該圖片轉換請求所對應的應用程式103,通知圖片轉換請求模組16從該雙端佇列的隊尾中取出其他圖片轉換請求來執行,結束流程。
步驟S506,圖片轉換請求刪除模組12在所有雙端佇列中搜索,找到該ID所對應的圖片轉換請求,記錄該圖片轉換請求,等到該圖片轉換請求到達雙端佇列的隊尾時,刪除該圖片轉換請求。
綜上所述,本發明符合發明專利要件,爰依法提出專利申請。惟,以上所述者僅為本發明之較佳實施例,本發明之範圍並不以上述實施例為限,舉凡熟悉本案技藝之人士援依本發明之精神所作之等效修飾或變化,皆應涵蓋於以下申請專利範圍內。