專利名稱:在客戶機(jī)-服務(wù)器分布式系統(tǒng)中使用的方法、服務(wù)器和客戶機(jī)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及在使用同步通信的客戶機(jī)-服務(wù)器分布式系統(tǒng)中使用的方法、服務(wù)器和客戶機(jī)。更具體地說,本發(fā)明涉及一種方法、服務(wù)器和客戶機(jī),用所述方法、服務(wù)器和客戶機(jī),可以減少從客戶機(jī)對服務(wù)器進(jìn)行服務(wù)器功能調(diào)用時起直到客戶機(jī)接收到已完成服務(wù)器功能的通知為止的周轉(zhuǎn)時間。
背景技術(shù):
在使用諸如計算機(jī)的信息處理終端的客戶機(jī)-服務(wù)器分布式系統(tǒng)中的常規(guī)同步通信中,客戶機(jī)對服務(wù)器進(jìn)行服務(wù)器功能調(diào)用。服務(wù)器執(zhí)行相應(yīng)于被調(diào)用的服務(wù)器功能的處理。當(dāng)已完成該處理時,服務(wù)器發(fā)送完成的通知給客戶機(jī)。
圖13是時序圖,示出在諸如上面所述的常規(guī)同步通信中,服務(wù)器與客戶機(jī)之間的處理流程。在圖13中,客戶機(jī)能夠執(zhí)行處理操作的時間是由陰影表示的??蛻魴C(jī)對服務(wù)器進(jìn)行服務(wù)器功能調(diào)用。客戶機(jī)不能執(zhí)行任何過程,直到從服務(wù)器接收到已完成服務(wù)器功能的通知為止。從客戶機(jī)調(diào)用服務(wù)器功能時起直到客戶機(jī)被通知已完成服務(wù)器功能為止的時間稱為“周轉(zhuǎn)時間(turnaroundtime)”。由于客戶機(jī)在周轉(zhuǎn)時間期間不能執(zhí)行任何處理的問題,因此提出了一種用于減少周轉(zhuǎn)時間技術(shù),即減少客戶機(jī)等待時間的技術(shù)(例如,見日本公開專利出版物編號9-330287)。
圖14是時序圖,示出在日本公開專利出版物編號9-330287中描述的常規(guī)同步通信方法的流程。在圖14中,客戶機(jī)包括客戶機(jī)命令部件,用于在客戶機(jī)側(cè)執(zhí)行過程并調(diào)用服務(wù)器功能;和用于與服務(wù)器通信的通信控制部件。當(dāng)產(chǎn)生調(diào)用服務(wù)器功能的需求時,客戶機(jī)命令部件請求通信控制部件調(diào)用服務(wù)器功能。響應(yīng)于該請求,通信控制部件立即向客戶機(jī)命令部件返回完成通知,表示服務(wù)器功能調(diào)用已經(jīng)失敗。同時,通信控制部件通過異步通信發(fā)送請求消息給服務(wù)器,以請求服務(wù)器功能的執(zhí)行。已接收了請求消息的服務(wù)器執(zhí)行相應(yīng)于所請求的服務(wù)器功能的處理。在完成服務(wù)器功能處理時,服務(wù)器發(fā)送完成消息給客戶機(jī)。客戶機(jī)的通信控制部件保存已從服務(wù)器發(fā)送的完成消息的內(nèi)容。當(dāng)通信控制部件從客戶機(jī)命令部件接收請求以再次調(diào)用這個服務(wù)器功能時,通信控制部件基于在那里保存的完成消息的內(nèi)容,通知客戶機(jī)命令部件該服務(wù)器功能的完成。
如上所述,通過使用在日本公開專利出版物編號9-330287中描述的同步通信方法,可以減少客戶機(jī)的周轉(zhuǎn)時間。
在上述常規(guī)同步通信方法中,通信控制部件立即返回完成通知至客戶機(jī)命令部件,即服務(wù)器功能的執(zhí)行已失敗,由此可以減少客戶機(jī)的周轉(zhuǎn)時間。然而,由于不是在將服務(wù)器功能完成通知返回至客戶機(jī)命令部件時進(jìn)行實際服務(wù)器功能調(diào)用,因此客戶機(jī)命令部件需要至少調(diào)用服務(wù)器功能兩次以確認(rèn)服務(wù)器功能調(diào)用的處理結(jié)果。
另外,由于完成服務(wù)器功能處理的時間是不知道的,因此客戶機(jī)有可能在從服務(wù)器接收到完成消息之前進(jìn)行第二次服務(wù)器功能調(diào)用,導(dǎo)致不必要處理的產(chǎn)生。
發(fā)明概述因此,本發(fā)明的目標(biāo)是,為客戶機(jī)-服務(wù)器系統(tǒng)提供一種同步通信方法、服務(wù)器和客戶機(jī),用所述方法、服務(wù)器和客戶機(jī),在服務(wù)器執(zhí)行相應(yīng)于服務(wù)器功能的處理的情況下,可以減少從客戶機(jī)對服務(wù)器進(jìn)行服務(wù)器功能調(diào)用時起直到客戶機(jī)接收到已完成服務(wù)器功能的通知為止的周轉(zhuǎn)時間,而不使客戶機(jī)多次調(diào)用服務(wù)器功能。
本發(fā)明具有下列特征以獲得上面提到的目標(biāo)。本發(fā)明的第一方面是針對一種在客戶機(jī)-服務(wù)器分布式系統(tǒng)中使用的方法,在該系統(tǒng)中客戶機(jī)對服務(wù)器進(jìn)行所希望的服務(wù)器功能調(diào)用,并且服務(wù)器執(zhí)行相應(yīng)于被調(diào)用的服務(wù)器功能的處理,該方法包括下列步驟注冊為預(yù)處理,該處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是一直到獲得對于客戶機(jī)所必需的最小信息時的點的處理;注冊為后處理,該處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是在預(yù)處理之后執(zhí)行的處理;以及建立經(jīng)注冊的預(yù)處理和經(jīng)注冊的后處理與表示服務(wù)器功能的服務(wù)器功能標(biāo)識符之間的對應(yīng)。
在上述方法中,相應(yīng)于服務(wù)器功能的處理可以被劃分成預(yù)處理和后處理。
較佳的是,該方法還包括下列步驟由客戶機(jī)發(fā)送請求消息給服務(wù)器以調(diào)用所希望的服務(wù)器功能,請求消息包括表示所希望的服務(wù)器功能的服務(wù)器功能標(biāo)識符;由服務(wù)器從客戶機(jī)接收請求消息;由服務(wù)器執(zhí)行相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的預(yù)處理;由服務(wù)器獲得預(yù)處理的執(zhí)行結(jié)果;由服務(wù)器發(fā)送完成消息給客戶機(jī),完成消息包括預(yù)處理的結(jié)果;在已發(fā)送了完成消息之后,由服務(wù)器執(zhí)行相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的后處理;以及由客戶機(jī)基于預(yù)處理的執(zhí)行結(jié)果執(zhí)行處理。
在上述方法中,在完成預(yù)處理時將完成消息返回給客戶機(jī)。由于對于客戶機(jī)所必需的最小信息是通過預(yù)處理獲得的,因此客戶機(jī)可以在接收到完成消息之后繼續(xù)處理。因此,可以減少周轉(zhuǎn)時間。另外,服務(wù)器在預(yù)處理之后執(zhí)行后處理,由此調(diào)用所希望的服務(wù)器功能。
較佳的是,該方法還包括下列步驟由服務(wù)器獲得后處理的執(zhí)行結(jié)果;由服務(wù)器發(fā)送后處理結(jié)果消息給客戶機(jī),后處理結(jié)果消息包括后處理的執(zhí)行結(jié)果;以及由客戶機(jī)基于后處理的執(zhí)行結(jié)果執(zhí)行處理。
在上述方法中,由于客戶機(jī)被通知后處理的執(zhí)行結(jié)果,客戶機(jī)可以基于后處理的執(zhí)行結(jié)果執(zhí)行所希望的處理。
較佳的是,該方法還包括下列步驟如果接收到取消服務(wù)器功能調(diào)用的取消指令,則由客戶機(jī)預(yù)先注冊一個條件,所述條件用于基于取消指令來確定是否取消服務(wù)器功能調(diào)用;如果接收到取消指令,則由客戶機(jī)基于取消指令來確定是否取消服務(wù)器功能調(diào)用;以及如果確定取消服務(wù)器功能調(diào)用,則由客戶機(jī)取消服務(wù)器功能調(diào)用。
在上述方法中,由于可以取消服務(wù)器功能調(diào)用,因此例如,在已進(jìn)行不必要的服務(wù)器功能調(diào)用的情況下,可以減少周轉(zhuǎn)時間。
本發(fā)明的第二方面是針對一種用于執(zhí)行由客戶機(jī)調(diào)用的服務(wù)器功能的服務(wù)器,包括預(yù)處理注冊部件用于注冊為預(yù)處理,該處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是一直到獲得對于客戶機(jī)所必需的最小信息時的點的處理;后處理注冊部件,用于注冊為后處理,該處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是在預(yù)處理之后執(zhí)行的處理;以及服務(wù)器功能對應(yīng)部件,用于建立經(jīng)注冊的預(yù)處理和經(jīng)注冊的后處理與表示服務(wù)器功能的服務(wù)器功能標(biāo)識符之間的對應(yīng)。
較佳的是,該方法還包括接收部件,用于從客戶機(jī)接收請求消息,請求消息包括表示由客戶機(jī)調(diào)用的服務(wù)器功能的服務(wù)器功能標(biāo)識符;預(yù)處理執(zhí)行部件,用于執(zhí)行相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的預(yù)處理并輸出預(yù)處理的執(zhí)行結(jié)果;發(fā)送部件,用于給客戶機(jī)發(fā)送完成消息,完成消息包括已由預(yù)處理執(zhí)行部件輸出的預(yù)處理的執(zhí)行結(jié)果;以及后處理執(zhí)行部件,用于在發(fā)送部件已發(fā)送完成消息之后,執(zhí)行相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的后處理。
較佳的是,后處理執(zhí)行部件輸出后處理的執(zhí)行結(jié)果,以及發(fā)送部件向客戶機(jī)發(fā)送后處理結(jié)果消息,后處理結(jié)果消息包括已由后處理執(zhí)行部件輸出的后處理的執(zhí)行結(jié)果。
本發(fā)明的第三方面是針對一種用于對服務(wù)器進(jìn)行所希望的服務(wù)器功能調(diào)用的客戶機(jī),包括發(fā)送部件,用于發(fā)送請求消息給服務(wù)器以調(diào)用所希望的服務(wù)器功能,請求消息包括表示所希望的服務(wù)器功能的服務(wù)器功能標(biāo)識符;接收部件,用于從服務(wù)器接收完成消息,完成消息包括相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的預(yù)處理的執(zhí)行結(jié)果,預(yù)處理是由服務(wù)器執(zhí)行的;以及控制部件,用于基于已由接收部件接收到的預(yù)處理的執(zhí)行結(jié)果來執(zhí)行處理,其中,服務(wù)器功能標(biāo)識符與預(yù)處理和后處理相對應(yīng),預(yù)處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是一直到獲得對于客戶機(jī)所必需的最小信息時的點的處理,后處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是在預(yù)處理之后執(zhí)行的處理。
較佳的是,服務(wù)器向客戶機(jī)發(fā)送后處理結(jié)果消息,后處理結(jié)果消息包括后處理的執(zhí)行結(jié)果,接收部件接收已從服務(wù)器發(fā)送的后處理結(jié)果消息,以及控制部件基于包括在后處理結(jié)果消息中的后處理的執(zhí)行結(jié)果來執(zhí)行處理。
較佳的是,該客戶機(jī)還包括取消條件注冊部件,用于如果接收到取消服務(wù)器功能調(diào)用的取消指令,則由客戶機(jī)預(yù)先注冊一個條件,該條件用于基于取消指令來確定是否取消服務(wù)器功能調(diào)用,以及如果接收到取消指令,則控制組件基于在取消條件注冊部件注冊的條件來確定是否取消服務(wù)器功能調(diào)用,并且如果確定取消服務(wù)器功能調(diào)用,則控制部件取消服務(wù)器功能調(diào)用。
如上所述,按照本發(fā)明,相應(yīng)于服務(wù)器功能的處理被劃分成預(yù)處理和后處理,并在完成預(yù)處理時將完成消息返回給客戶機(jī)。由于對于客戶機(jī)所必需最小信息是通過預(yù)處理獲得的,因此客戶機(jī)可以在接收到完成消息之后繼續(xù)處理。因此,可以減少周轉(zhuǎn)時間。另外,服務(wù)器在預(yù)處理之后執(zhí)行后處理,由此調(diào)用所希望的服務(wù)器功能。
通過下面本發(fā)明的詳細(xì)描述并結(jié)合附圖,本發(fā)明的這些和其它目標(biāo)、特征、方面和優(yōu)點將變得更顯而易見。
圖1是方框圖,示出按照本發(fā)明第一實施例的客戶機(jī)-服務(wù)器系統(tǒng)的示例性結(jié)構(gòu);圖2示出保存在服務(wù)器功能對應(yīng)部件103中的服務(wù)器功能與預(yù)處理和后處理之間的示例性對應(yīng)表;圖3是時序圖,描述在按照第一實施例的客戶機(jī)-服務(wù)器系統(tǒng)中服務(wù)器10b與客戶機(jī)10a之間處理的大綱;圖4是流程圖,示出按照本發(fā)明第一實施例的客戶機(jī)-服務(wù)器系統(tǒng)的所有操作的細(xì)節(jié);圖5是流程圖,示出能夠獲得后處理執(zhí)行結(jié)果的客戶機(jī)-服務(wù)器系統(tǒng)的所有操作的細(xì)節(jié);圖6是方框圖,示出按照本發(fā)明第二實施例的整個客戶機(jī)-服務(wù)器的示例性結(jié)構(gòu);圖7是流程圖,示出按照第二實施例的客戶機(jī)-服務(wù)器系統(tǒng)的所有操作;圖8是流程圖,示出在客戶機(jī)通知服務(wù)器取消了服務(wù)器功能調(diào)用的情況下客戶機(jī)-服務(wù)器系統(tǒng)的所有操作;圖9是流程圖,示出在客戶機(jī)發(fā)送恢復(fù)消息給服務(wù)器的情況下客戶機(jī)-服務(wù)器系統(tǒng)的所有操作;圖10是時序圖,示意性地示出在按照第一個例子的客戶機(jī)-服務(wù)器系統(tǒng)中處理的流程;圖11是時序圖,示意性地示出在按照第二個例子的客戶機(jī)-服務(wù)器系統(tǒng)中處理的流程;圖12是時序圖,示意性地示出按照第三個例子的客戶機(jī)-服務(wù)器系統(tǒng)中處理的流程;圖13是時序圖,示出以常規(guī)的同步通信方法在服務(wù)器與客戶機(jī)之間處理的流程;以及圖14是時序圖,示出在日本公開專利出版物編號9-330287中描述的常規(guī)同步通信方法的流程。
詳細(xì)說明下面將參考附圖,描述本發(fā)明的實施例。
(第一實施例)圖1是方框圖,示出按照本發(fā)明第一實施例的客戶機(jī)-服務(wù)器系統(tǒng)的示例性結(jié)構(gòu)。
在圖1中,客戶機(jī)-服務(wù)器系統(tǒng)包括客戶機(jī)10a和服務(wù)器10b??蛻魴C(jī)10a和服務(wù)器10b可以彼此通信。在本實施例所示的客戶機(jī)-服務(wù)器系統(tǒng)中,客戶機(jī)10a通過同步通信對服務(wù)器10b進(jìn)行在服務(wù)器10b上處理并執(zhí)行的服務(wù)器功能調(diào)用。
在客戶機(jī)10a和服務(wù)器10b是分開、單獨(dú)的設(shè)備的情況下,客戶機(jī)10a和服務(wù)器10b使用例如,無線通信諸如藍(lán)牙、無線LAN或紅外線無線通信或有線通信諸如ISDN、ADSL、串行電纜或并行電纜來互相通信。在單一裝置中提供客戶機(jī)10a和服務(wù)器10b的情況下,客戶機(jī)10a和服務(wù)器10b在處理、任務(wù)或線程期間互相通信。注意,雖然在圖1中提供單個客戶機(jī)10a和單個服務(wù)器10b,但可提供多個客戶機(jī)10a和多個服務(wù)器10b。
客戶機(jī)10a包括客戶機(jī)命令部件104和通信控制部件112。客戶機(jī)命令部件104在客戶機(jī)側(cè)執(zhí)行過程并根據(jù)該過程調(diào)用服務(wù)器功能。通信控制部件112控制客戶機(jī)命令部件104與服務(wù)器10b之間的通信。
通信控制部件112具有同步通信部件105、異步通信發(fā)送部件106和異步通信接收部件111。同步通信部件105通過同步通信從客戶機(jī)命令部件104接收服務(wù)器功能調(diào)用并發(fā)送請求給異步通信發(fā)送部件106以調(diào)用服務(wù)器功能。另外,同步通信部件105從異步通信接收部件111接收來自服務(wù)器的完成消息,并通知客戶機(jī)命令部件104服務(wù)器功能的完成。異步通信發(fā)送部件106從同步通信部件105接收調(diào)用請求,并通過異步通信發(fā)送請求消息給服務(wù)器。異步通信接收部件111從服務(wù)器接收完成消息,并通知同步通信部件105完成。
服務(wù)器10b包括服務(wù)器命令部件100、預(yù)處理注冊部件101、后處理注冊部件102、服務(wù)器功能對應(yīng)部件103、異步通信接收部件107、預(yù)處理執(zhí)行部件108、異步通信發(fā)送部件109和后處理執(zhí)行部件110。
預(yù)處理注冊部件101注冊預(yù)處理。預(yù)處理是相應(yīng)于已由客戶機(jī)10a調(diào)用的服務(wù)器功能的處理的一部分,并且是一直到獲得對于客戶機(jī)10a所必需的最小信息時的點的處理。在執(zhí)行預(yù)處理隨后的處理(即,將在后面描述的后處理)之前,服務(wù)器10b發(fā)送預(yù)處理的執(zhí)行結(jié)果給客戶機(jī)10a。
后處理注冊部件102注冊后處理。后處理是相應(yīng)于已由客戶機(jī)10a調(diào)用的服務(wù)器功能的處理的一部分,并且是在服務(wù)器10b發(fā)送預(yù)處理的執(zhí)行結(jié)果給客戶機(jī)10a之后執(zhí)行的處理,即相應(yīng)于服務(wù)器功能除預(yù)處理之外的處理的一部分。
將在后面描述的例子中描述預(yù)處理和后處理。
響應(yīng)于服務(wù)器控制順的指令,服務(wù)器命令部件100請求預(yù)處理注冊部件101或后處理注冊部件102注冊預(yù)處理和后處理。服務(wù)器命令部件100可響應(yīng)于來自連接到服務(wù)器10b的客戶機(jī)的指令或者響應(yīng)于來自在服務(wù)器10b上執(zhí)行的應(yīng)用的指令來進(jìn)行這樣的請求。
基于來自預(yù)處理注冊部件101和后處理注冊部件102的指令,服務(wù)器功能對應(yīng)部件103創(chuàng)建并保存服務(wù)器功能與預(yù)處理和后處理之間的對應(yīng)表。圖2示出服務(wù)器功能與預(yù)處理和后處理之間的示例性對應(yīng)表,它被保存在服務(wù)器功能對應(yīng)部件103中。如在圖2中所示,服務(wù)器功能對應(yīng)部件103以表格化的形式注冊代表服務(wù)器功能的標(biāo)識符(在下文中稱為“服務(wù)器功能標(biāo)識符”)及其相應(yīng)的預(yù)處理和后處理。在圖2所示的例子中,預(yù)處理1被注冊為服務(wù)器功能A的預(yù)處理,而后處理2被注冊為服務(wù)器功能A的后處理;預(yù)處理2被注冊為服務(wù)器功能B的預(yù)處理,而后處理1被注冊為服務(wù)器功能B的后處理;以及預(yù)處理3被注冊為服務(wù)器功能C的預(yù)處理。在將這樣一個表注冊在服務(wù)器功能對應(yīng)部件103中的情況下,例如,當(dāng)客戶機(jī)10a請求服務(wù)器功能A時,服務(wù)器10b執(zhí)行預(yù)處理1,發(fā)送預(yù)處理1的執(zhí)行結(jié)果至客戶機(jī)10a,隨后執(zhí)行后處理2。
異步通信接收部件107從客戶機(jī)10a接收請求消息以調(diào)用服務(wù)器功能并將請求消息傳遞給服務(wù)器功能對應(yīng)部件103。服務(wù)器功能對應(yīng)部件103請求預(yù)處理執(zhí)行部件108執(zhí)行預(yù)處理。預(yù)處理執(zhí)行部件108隨后將預(yù)處理的執(zhí)行結(jié)果返回給服務(wù)器功能對應(yīng)部件103。服務(wù)器功能對應(yīng)部件103基于已從預(yù)處理執(zhí)行部件108返回的預(yù)處理執(zhí)行結(jié)果創(chuàng)建完成消息,并將完成消息傳遞給異步通信發(fā)送部件109。異步通信發(fā)送部件109通過異步通信發(fā)送完成消息給客戶機(jī)10a。在服務(wù)器功能對應(yīng)部件103已將完成消息傳遞給異步通信發(fā)送部件109之后,服務(wù)器功能對應(yīng)部件103請求后處理執(zhí)行部件110執(zhí)行相應(yīng)于被調(diào)用的服務(wù)器功能的后處理。響應(yīng)于來自服務(wù)器功能對應(yīng)部件103的請求,后處理執(zhí)行部件110執(zhí)行后處理。
圖3是時序圖,用于說明在按照第一實施例的客戶機(jī)-服務(wù)器系統(tǒng)中服務(wù)器10b與客戶機(jī)10a之間處理的大綱(outline)。參考圖3,下面將描述在按照第一實施例的客戶機(jī)-服務(wù)器系統(tǒng)中服務(wù)器10b與客戶機(jī)10a之間處理的大綱。
在客戶機(jī)10a的客戶機(jī)命令部件104產(chǎn)生調(diào)用服務(wù)器功能的請求的情況下,通信控制部件112通過異步通信發(fā)送請求消息到服務(wù)器106以調(diào)用服務(wù)器功能。
已接收了請求消息的服務(wù)器10b只執(zhí)行相應(yīng)于所請求的服務(wù)器功能的預(yù)處理。在完成預(yù)處理時,服務(wù)器10b發(fā)送完成消息給客戶機(jī)10a,以通知客戶機(jī)10a預(yù)處理的執(zhí)行結(jié)果。之后,服務(wù)器10b執(zhí)行后處理。
當(dāng)客戶機(jī)10a的通信控制部件112從服務(wù)器10b接收到完成消息時,通信控制部件112通知客戶機(jī)命令部件104已完成服務(wù)器功能調(diào)用。如此,客戶機(jī)命令部件104可以接收預(yù)處理的執(zhí)行結(jié)果。
圖4是流程圖,示出按照本發(fā)明第一實施例的客戶機(jī)-服務(wù)器系統(tǒng)的所有操作的細(xì)節(jié)。參考圖4,下面將描述按照第一實施例的客戶機(jī)-服務(wù)器系統(tǒng)的所有操作的細(xì)節(jié)。在圖4中,步驟S201至S203是由服務(wù)器10b執(zhí)行的操作。步驟S204和S205是由客戶機(jī)10a執(zhí)行的操作。步驟S206至S210是由服務(wù)器10b執(zhí)行的操作。步驟S211和S212是由客戶機(jī)10a執(zhí)行的操作。
首先,服務(wù)器10b的預(yù)處理注冊部件101從服務(wù)器命令部件100接收請求以注冊預(yù)處理并執(zhí)行注冊過程(步驟S201)。接著,預(yù)處理注冊部件102從服務(wù)器命令部件100接收請求以注冊后處理并執(zhí)行注冊過程(步驟S202)。注意,雖然在本實施例中在步驟S201和S202的注冊請求是由服務(wù)器命令部件100產(chǎn)生的,但可執(zhí)行注冊過程使得服務(wù)器10b從客戶機(jī)10a的客戶機(jī)命令部件104接收注冊請求并將注冊請求分別發(fā)送給預(yù)處理注冊部件101和后處理注冊部件102。在服務(wù)器從服務(wù)器操作員接收到指令時,或者在服務(wù)器從與其連接的客戶機(jī)接收到指令時,或者服務(wù)器從在服務(wù)器10b上執(zhí)行的應(yīng)用接收到指令時,可執(zhí)行步驟S201和S202。
隨后,服務(wù)器功能對應(yīng)部件103存儲經(jīng)注冊的預(yù)處理和后處理,使得相應(yīng)于服務(wù)器功能標(biāo)識符(步驟S203)。注意,雖然在本實施例中,在注冊預(yù)處理和后處理之后的某一時刻,服務(wù)器功能對應(yīng)部件103創(chuàng)建預(yù)處理和后處理與服務(wù)器功能標(biāo)識符之間的對應(yīng),但可每次在步驟S201和S202執(zhí)行注冊過程時建立對應(yīng)。
在由客戶機(jī)10a的客戶機(jī)命令部件104產(chǎn)生請求以調(diào)用一個特定的服務(wù)器功能的情況下,同步通信部件105通過同步通信接收調(diào)用請求(步驟S204)。服務(wù)器功能調(diào)用請求包括調(diào)用服務(wù)器功能所要求的信息和通過異步通信建立同步通信所要求的地址信息,諸如所請求的服務(wù)器功能的服務(wù)器功能標(biāo)識符、源信息、目的地信息,以及在執(zhí)行預(yù)處理時所要求的數(shù)據(jù)和在執(zhí)行后處理所要求的數(shù)據(jù)。
隨后,已接收到服務(wù)器功能調(diào)用請求的同步通信部件105允許異步通信發(fā)送部件106通過異步通信發(fā)送請求消息給服務(wù)器10b以調(diào)用服務(wù)器功能(步驟S205)。
服務(wù)器10b的異步通信接收部件107從客戶機(jī)10a接收請求消息(步驟S206)。
服務(wù)器功能對應(yīng)部件103參考保存在那里的表,確定相應(yīng)于包括在接收到的請求消息中的服務(wù)器功能標(biāo)識符的預(yù)處理,并隨后允許預(yù)處理執(zhí)行部件108執(zhí)行相應(yīng)的預(yù)處理(步驟S207)。注意,只在執(zhí)行預(yù)處理時所要求的數(shù)據(jù)包括在步驟S206所接收到的請求消息中時,預(yù)處理執(zhí)行部件108使用該數(shù)據(jù)在步驟S207執(zhí)行預(yù)處理。
預(yù)處理執(zhí)行部件108輸出在步驟S207執(zhí)行的預(yù)處理的執(zhí)行結(jié)果至服務(wù)器功能對應(yīng)部件103(步驟S208)。
服務(wù)器功能對應(yīng)部件103將從預(yù)處理執(zhí)行部件108獲得的執(zhí)行結(jié)果傳遞給異步通信發(fā)送部件109,隨后允許異步通信發(fā)送部件109創(chuàng)建包括執(zhí)行結(jié)果的完成消息,并通過異步通信將完成消息發(fā)送給客戶機(jī)10a(步驟S209)。完成消息包括通知客戶機(jī)10a已完成服務(wù)器功能請求所需要的信息,諸如源信息和目的地信息,以及預(yù)處理的執(zhí)行結(jié)果。作為目的地的客戶機(jī)10a的地址是基于包括在請求消息中的源信息來確定的。
在已在步驟S209將完成消息發(fā)送給客戶機(jī)10a之后,服務(wù)器功能對應(yīng)部件103確定相應(yīng)于服務(wù)器功能標(biāo)識符的后處理并允許后處理執(zhí)行部件110執(zhí)行后處理(步驟S210)。注意,只有在執(zhí)行后處理時所要求的數(shù)據(jù)包括在步驟S206所接收到的請求消息中時,后處理執(zhí)行部件110使用該數(shù)據(jù)在步驟S210執(zhí)行后處理。
客戶機(jī)10a的異步通信接收部件111從服務(wù)器10b接收完成消息,并通知同步通信部件105完成(步驟S211)。
同步通信部件105相應(yīng)地通知客戶機(jī)命令部件104已完成服務(wù)器功能調(diào)用(步驟S212)。完成通知包括在完成消息中所包括的預(yù)處理的執(zhí)行結(jié)果。已接收到通知的客戶機(jī)命令部件104繼續(xù)所希望的處理。
如上所述,在第一實施例中,服務(wù)器10b注冊相應(yīng)于服務(wù)器功能的處理,以便將它劃分成預(yù)處理和后處理。在由客戶機(jī)10a產(chǎn)生請求以執(zhí)行服務(wù)器功能的情況下,服務(wù)器10b執(zhí)行相應(yīng)于服務(wù)器功能的預(yù)處理并在完成預(yù)處理的執(zhí)行時發(fā)送完成消息給客戶機(jī)10a。如此,客戶機(jī)10a可以在已完成所有相應(yīng)于服務(wù)器功能處理(即,預(yù)處理和后處理)之前接收完成消息,并可以執(zhí)行所希望的處理,因而與客戶機(jī)10a在已完成所有相應(yīng)于服務(wù)器功能的處理之后接收完成消息并執(zhí)行所希望的處理相比較,可以減少周轉(zhuǎn)時間。另外,通過只調(diào)用服務(wù)器功能一次,客戶機(jī)10a可以識別完成相應(yīng)于服務(wù)器功能的最小必需處理時的點,因而客戶機(jī)10a不需要多次調(diào)用服務(wù)器功能。
注意,在圖4中所示的流程圖描述了注冊預(yù)處理的過程(步驟S201),注冊后處理的過程(步驟S202)和建立對應(yīng)的過程(步驟S203)是順序地與在步驟S204的處理之后的過程一起執(zhí)行的;但是,在步驟S201至S203的過程一般預(yù)先獨(dú)立于在步驟S204的過程之后的過程執(zhí)行。
在第一實施例中,如果在步驟S201中沒有預(yù)先執(zhí)行注冊預(yù)處理,在執(zhí)行服務(wù)器10b從客戶機(jī)10a接收到請求消息的步驟S206時,服務(wù)器10b可跳過執(zhí)行預(yù)處理的步驟S207和輸出預(yù)處理的執(zhí)行結(jié)果的步驟S208,并可在步驟S209發(fā)送不包括預(yù)處理的執(zhí)行結(jié)果的完成消息。
在第一實施例中,在圖2所示的服務(wù)器功能C的情況下,例如,如果在步驟S202中沒有預(yù)先執(zhí)行注冊后處理,在執(zhí)行服務(wù)器10b從客戶機(jī)10a接收請求消息的步驟S206時,服務(wù)器10b可跳過執(zhí)行后處理的步驟S208。也就是說,不總是需要分別執(zhí)行注冊預(yù)處理和后處理的步驟S201和S202兩者。
(第一實施例的變體)前述第一實施例沒有明確地描述在后處理執(zhí)行部件110已完成后處理的執(zhí)行之后執(zhí)行的操作。另一方面,在第一實施例的變體中,服務(wù)器10b可通知客戶機(jī)10a后處理的執(zhí)行結(jié)果。
圖5是流程圖,示出能夠獲得后處理的執(zhí)行結(jié)果的客戶機(jī)-服務(wù)器系統(tǒng)的所有操作的細(xì)節(jié)。參考圖5,下面將描述能夠獲得后處理的執(zhí)行結(jié)果的客戶機(jī)-服務(wù)器系統(tǒng)的所有操作的細(xì)節(jié)。注意,在圖5中,表示與在圖4中所示的客戶機(jī)-服務(wù)器系統(tǒng)的操作相同操作的步驟由相同的步驟數(shù)字指定,并將省略其描述。在圖5中,步驟S401和S402是由服務(wù)器10b執(zhí)行的操作。明確地說,服務(wù)器10b執(zhí)行步驟S210,然后是步驟S401和S402。步驟S403和S404是由客戶機(jī)10a執(zhí)行的操作。
已在步驟S210執(zhí)行了后處理的服務(wù)器10b的后處理執(zhí)行部件110輸出后處理的執(zhí)行結(jié)果至服務(wù)器功能對應(yīng)部件103(步驟S401)。
服務(wù)器功能對應(yīng)部件103隨后將后處理的執(zhí)行結(jié)果傳遞給異步通信發(fā)送部件109,并允許異步通信發(fā)送部件109創(chuàng)建包括執(zhí)行結(jié)果的后處理結(jié)果消息,隨后通過異步通信將后處理結(jié)果消息發(fā)送給客戶機(jī)10a(步驟S402)。后處理結(jié)果消息包括通知客戶機(jī)10a服務(wù)器已完成所有相應(yīng)于服務(wù)器功能調(diào)用的處理所必需的信息,諸如源信息和目的地信息,以及后處理的執(zhí)行結(jié)果。作為目的地的客戶機(jī)10a的地址是基于包括在請求消息中的源信息來確定的。
隨后,客戶機(jī)10a的異步通信接收部件111從服務(wù)器10b接收后處理結(jié)果消息(步驟S403)。
同步通信部件105通知客戶機(jī)命令部件104包括在接收到的后處理結(jié)果消息中的后處理執(zhí)行結(jié)果,因此通知服務(wù)器已完成所有相應(yīng)于服務(wù)器功能調(diào)用的處理(步驟S404)??蛻魴C(jī)命令部件104相應(yīng)地基于后處理的執(zhí)行結(jié)果繼續(xù)所希望的處理。
如此,客戶機(jī)可以獲得后處理的執(zhí)行結(jié)果,由此客戶機(jī)被通知服務(wù)器已完成所有相應(yīng)于服務(wù)器功能調(diào)用的處理。
(第二實施例)本發(fā)明的第二實施例具有除在第一實施例中描述的功能之外的功能,即客戶機(jī)不僅可以處理完成消息,而且還可以處理取消消息,它表示已取消服務(wù)器功能調(diào)用。已接收到取消消息的客戶機(jī)取消服務(wù)器功能調(diào)用。參考附圖,下面將描述第二實施例。
圖6是方框圖,示出按照本發(fā)明第二實施例的整個客戶機(jī)-服務(wù)器系統(tǒng)的示例性結(jié)構(gòu)。注意,在圖6中,具有與在圖1中所示的功能相同的功能的相同組件由相同的參考數(shù)字指定,并將省略其描述。
在圖6中,按照第二實施例的客戶機(jī)10c包括客戶機(jī)命令部件104c和通信控制部件502。通信控制部件502具有同步通信部件105c、異步通信發(fā)送部件106、異步通信接收部件111c和取消條件注冊部件501。
取消條件注冊部件501注冊用于基于包括在取消消息中的信息確定是否取消服務(wù)器功能調(diào)用的條件。
圖7是流程圖,示出按照第二實施例的客戶機(jī)-服務(wù)器系統(tǒng)的所有操作。參考圖7,下面將描述客戶機(jī)清除等待完成消息的狀態(tài)的操作。注意,在圖7中,與在圖4中所示的操作相同的操作由相同的步驟數(shù)字指定,并將省略其描述。
客戶機(jī)命令部件104c在取消條件注冊部件501中預(yù)注冊一個條件,在客戶機(jī)10c接收取消消息時,使用該條件基于取消消息確定是否取消服務(wù)器功能調(diào)用(步驟S601)。可以在任何步驟S201、S202、S203和S204之前或之后的任何時間執(zhí)行步驟S601的操作,或者可預(yù)先完全獨(dú)立于這些操作來執(zhí)行它。
在步驟S602,客戶機(jī)10c的異步通信發(fā)送部件111c從服務(wù)器10b接收完成消息或接收取消消息。注意,異步通信接收部件111c在步驟S602接收到的消息是在步驟S209從服務(wù)器10b發(fā)送的完成消息、從客戶機(jī)命令部件104c發(fā)送的取消消息和從另一個客戶機(jī)50a發(fā)送的取消消息中的任何一個。
隨后,異步通信接收部件111c確定在步驟S602接收到的消息是否是取消消息或完成消息(步驟S603)。如果它被確定為完成消息,則客戶機(jī)10c前進(jìn)至步驟S212的操作。
另一方面,如果它被確定為取消消息,異步通信接收部件111c基于在步驟S601中注冊在取消條件注冊部件501中的條件來確定是否取消服務(wù)器功能調(diào)用(步驟S604)。
如果在步驟S604確定要取消服務(wù)器功能調(diào)用,則異步通信接收部件111c通知同步通信部件105c已取消服務(wù)器功能調(diào)用。同步通信部件105c相應(yīng)地通知客戶機(jī)命令部件104c已取消服務(wù)器功能調(diào)用(步驟S605)。在收到通知時,客戶機(jī)命令部件104c恢復(fù)處理。另一方面,如果在步驟S604確定不取消服務(wù)器功能調(diào)用,則異步通信接收部件111c返回至步驟S602的操作并恢復(fù)接收消息。
如上所述,按照第二實施例,客戶機(jī)10c的通信控制部件502可以接收取消消息也可以接收完成消息。通信控制部件502可以在其中注冊一個條件,在接收取消消息時,使用該條件來確定是否取消服務(wù)器功能調(diào)用。在通信控制部件502接收到取消消息的情況下,通信控制部件502基于上述條件確定是否取消服務(wù)器功能調(diào)用過程。如果確定取消服務(wù)器功能調(diào)用,則由客戶機(jī)進(jìn)行的服務(wù)器功能調(diào)用在過程中被取消,由此可以減少周轉(zhuǎn)時間。
如果客戶機(jī)10c在已取消服務(wù)器功能之后從服務(wù)器10b接收到完成消息,則客戶機(jī)10c可丟棄這個完成消息。
(第二實施例的第一變體)已取消服務(wù)器功能調(diào)用的客戶機(jī)10c的異步通信發(fā)送部件106響應(yīng)于收到取消消息,可不僅給服務(wù)器10b發(fā)送請求消息,而且還可發(fā)送客戶機(jī)-至-服務(wù)器取消消息,它表示已取消服務(wù)器功能調(diào)用。在這種情況下,服務(wù)器10b的異步通信接收部件107可不僅接收請求消息,而且還可接收客戶機(jī)-至-服務(wù)器取消消息作為要從異步通信發(fā)送部件106發(fā)送的消息。在異步通信接收部件107接收到客戶機(jī)-至-服務(wù)器取消消息的情況下,服務(wù)器10b不發(fā)送對服務(wù)器功能調(diào)用的響應(yīng)給客戶機(jī)10c。將在圖8中詳細(xì)地描述此操作。
圖8是流程圖,示出在客戶機(jī)通知服務(wù)器已取消服務(wù)器功能調(diào)用的情況下客戶機(jī)-服務(wù)器系統(tǒng)的所有操作。參考圖8,下面將描述在客戶機(jī)已取消服務(wù)器功能調(diào)用的情況下客戶機(jī)-服務(wù)器系統(tǒng)的所有操作。注意,在圖8中,表示與在圖7中所示的操作相同操作的步驟由相同的步驟數(shù)字指定,并將省略其描述。
如果在步驟S604確定取消服務(wù)器功能調(diào)用,則異步通信接收部件111c通知同步通信部件105c已取消服務(wù)器功能調(diào)用(步驟S605)。同步通信部件105c相應(yīng)地允許異步通信發(fā)送部件106發(fā)送客戶機(jī)-至-服務(wù)器取消消息給服務(wù)器10b(步驟S701)。
在已輸出預(yù)處理的執(zhí)行結(jié)果(步驟S208)之后,服務(wù)器10b確定服務(wù)器10b是否已從客戶機(jī)10c接收到客戶機(jī)-至-服務(wù)器取消消息(步驟S702)。如果在步驟S702確定服務(wù)器10b還沒有接收到客戶機(jī)-至-服務(wù)器取消消息,則服務(wù)器10b前進(jìn)至步驟S209的操作。另一方面,如果確定服務(wù)器10b已接收到客戶機(jī)-至-服務(wù)器取消消息,則服務(wù)器10b前進(jìn)至步驟S206的操作,在這里服務(wù)器10b從客戶機(jī)10c接收另一個請求消息,而不執(zhí)行步驟S209和S210的操作。
按照上述方法,在從客戶機(jī)10c將客戶機(jī)-至-服務(wù)器取消消息發(fā)送給服務(wù)器10b的情況下,服務(wù)器10b不需要將對服務(wù)器功能調(diào)用的響應(yīng)發(fā)送給客戶機(jī)10c。另外,即使在步驟S202注冊了后處理,服務(wù)器10b也不需要執(zhí)行已變得不必要的后處理。
(第二實施例的第二變體)在前述第一變體中,在客戶機(jī)10c接收到取消消息的情況下,客戶機(jī)10c的異步通信發(fā)送部件106取消服務(wù)器功能調(diào)用,隨后發(fā)送客戶機(jī)-至-服務(wù)器取消消息至服務(wù)器10b。在這種情況下,已發(fā)送客戶機(jī)-至-服務(wù)器取消消息的異步通信發(fā)送部件106可發(fā)送恢復(fù)消息以恢復(fù)被取消的服務(wù)器功能調(diào)用。這里,服務(wù)器10b的異步通信接收部件107不僅可以接收請求消息和客戶機(jī)-至-服務(wù)器取消消息,而且還可以接收恢復(fù)消息。當(dāng)服務(wù)器10b從客戶機(jī)10c接收恢復(fù)消息以恢復(fù)服務(wù)器功能調(diào)用時,服務(wù)器10b執(zhí)行響應(yīng)于收到客戶機(jī)-至-服務(wù)器取消消息而沒有執(zhí)行的后處理,由此可以恢復(fù)服務(wù)器功能調(diào)用。將在圖9中詳細(xì)地描述該操作。
圖9是流程圖,示出在客戶機(jī)發(fā)送恢復(fù)消息給服務(wù)器的情況下客戶機(jī)-服務(wù)器系統(tǒng)的所有操作。參考圖9,下面將描述在客戶機(jī)發(fā)送恢復(fù)消息給服務(wù)器的情況下客戶機(jī)-服務(wù)器系統(tǒng)的操作。在圖9中,表示與圖8的操作相同的操作的步驟由相同的步驟數(shù)字指定,并將省略其描述。
在客戶機(jī)10c已在步驟S701發(fā)送客戶機(jī)-至-服務(wù)器消息給服務(wù)器10b之后,客戶機(jī)命令部件104c確定是否發(fā)送恢復(fù)消息給服務(wù)器10b以恢復(fù)被取消的服務(wù)器功能調(diào)用(步驟S801)。如果確定發(fā)送恢復(fù)消息,則客戶機(jī)命令部件104c允許同步通信部件105c和異步通信發(fā)送部件106發(fā)送恢復(fù)消息給服務(wù)器10b(步驟S802)。注意,可以在步驟S701的操作之后任何時間執(zhí)行步驟S801的操作。
在步驟S205之后,服務(wù)器10b從客戶機(jī)10c或者接收請求消息或者接收恢復(fù)消息(步驟S803)。
服務(wù)器10b隨后確定在步驟S803接收到的消息是請求消息還是恢復(fù)消息(步驟S804)。如果確定該消息是請求消息,則服務(wù)器10b前進(jìn)至步驟S207的操作。另一方面,如果確定該消息是恢復(fù)消息,則服務(wù)器10b前進(jìn)至步驟S210的操作并執(zhí)行后處理。
按照上述方法,在服務(wù)器10b在接收客戶機(jī)-至-服務(wù)器取消消息之后從客戶機(jī)10c接收到恢復(fù)消息的情況下,服務(wù)器10b執(zhí)行因服務(wù)器功能調(diào)用的取消而未執(zhí)行的后處理。由此,可以恢復(fù)被取消的服務(wù)器功能處理。
現(xiàn)在,將使用有關(guān)服務(wù)器功能、預(yù)處理和后處理的具體例子來描述本發(fā)明的例子。
(第一個例子)本發(fā)明的第一個例子描述使用圖象解碼服務(wù)器作為服務(wù)器的情況下的客戶機(jī)-服務(wù)器系統(tǒng)。
按照慣例,在客戶機(jī)請求服務(wù)器作為一個服務(wù)器功能來執(zhí)行圖象解碼過程,服務(wù)器執(zhí)行圖象解碼過程,隨后發(fā)送解碼結(jié)果給客戶機(jī),并且服務(wù)器恢復(fù)控制。然而,這個處理流程引起在客戶機(jī)上顯示布局的時延。要克服此問題,按照本發(fā)明第一個例子的圖象解碼服務(wù)器,將在圖象解碼過程之中用于獲得圖象尺寸的處理注冊為預(yù)處理,并將用于解碼圖象的處理注冊為后處理。由此,可以克服在顯示布局時的時延問題。在本例的預(yù)處理中,獲得有關(guān)被解碼圖象尺寸的信息作為對于客戶機(jī)的最小必需信息。
圖10是時序圖,示意性地示出按照第一個例子的客戶機(jī)-服務(wù)器系統(tǒng)中處理的流程。如在圖10中所示,當(dāng)客戶機(jī)選擇一個URL(步驟S1)時,客戶機(jī)發(fā)送在URL中顯示的圖象數(shù)據(jù)至圖象解碼服務(wù)器,并作為一個服務(wù)器功能請求圖象解碼服務(wù)器解碼圖象(步驟S2)。
響應(yīng)于該請求,圖象解碼服務(wù)器作為預(yù)處理從所發(fā)送的圖象數(shù)據(jù)獲得圖象的尺寸(步驟S3)并作為預(yù)處理的執(zhí)行結(jié)果通知客戶機(jī)圖象的尺寸(步驟S4)。
客戶機(jī)等待顯示相應(yīng)于圖象數(shù)據(jù)的部分,直到客戶機(jī)由圖象解碼服務(wù)器通知圖象的尺寸(步驟S5)為止。當(dāng)客戶機(jī)接收到圖象尺寸的通知時,客戶機(jī)基于圖象的尺寸空出一個嵌入圖象的區(qū)域,隨后顯示布局(步驟S6)。
在預(yù)處理之后,圖象解碼服務(wù)器作為后處理解碼圖象(步驟S7)。在完成后處理時,圖象解碼服務(wù)器發(fā)送被解碼的圖象至客戶機(jī),作為后處理的執(zhí)行結(jié)果(步驟S8)。
客戶機(jī)相應(yīng)地在空出的區(qū)域中顯示已發(fā)送給它的圖象(步驟S9)。
如上所述,在第一個例子中,在預(yù)處理中,服務(wù)器預(yù)先獲得僅有關(guān)圖象尺寸的信息,這是對于客戶機(jī)顯示布局的最低需要,隨后將該信息發(fā)送給客戶機(jī)。之后,服務(wù)器作為后處理解碼圖象,隨后發(fā)送被解碼的圖象給客戶機(jī)。如此,客戶機(jī)可以開始布局過程而不需要等待服務(wù)器完成解碼處理。
(第二個例子)本發(fā)明的第二個例子描述使用假名-日本漢字轉(zhuǎn)換服務(wù)器作為服務(wù)器的情況下的客戶機(jī)-服務(wù)器系統(tǒng)。
按照慣例,在服務(wù)器嘗試在客戶機(jī)指定日本漢字候選(candidate)的時間點上執(zhí)行獲得預(yù)言性數(shù)據(jù)(predictive data)的過程的情況下,獲得過程要求一些時間并因此對于客戶機(jī)要費(fèi)時間來顯示預(yù)言性數(shù)據(jù)。另一方面,為了改進(jìn)顯示預(yù)言性數(shù)據(jù)的響應(yīng)時間,如果客戶機(jī)在客戶機(jī)請求服務(wù)器獲得候選的同時嘗試獲得預(yù)言性數(shù)據(jù),則對于客戶機(jī)要費(fèi)時間來顯示候選。要克服此問題,按照本發(fā)明第二個例子的假名-日本漢字轉(zhuǎn)換服務(wù)器,將在假名-日本漢字轉(zhuǎn)換處理之中用于提取候選的處理注冊為預(yù)處理,并將用于獲得預(yù)言性數(shù)據(jù)的處理注冊為后處理。在本例的預(yù)處理中,獲得有關(guān)假名-日本漢字轉(zhuǎn)換候選的信息,作為對于客戶機(jī)的最低必需信息。
圖11是時序圖,示意性地示出按照第二個例子的客戶機(jī)-服務(wù)器系統(tǒng)中處理的流程。如在圖11中所示,當(dāng)客戶機(jī)輸入假名(步驟S11)時,客戶機(jī)請求假名-日本漢字轉(zhuǎn)換服務(wù)器獲得轉(zhuǎn)換候選(步驟S12)。
響應(yīng)于該請求,假名-日本漢字轉(zhuǎn)換服務(wù)器作為預(yù)處理提取相應(yīng)于所發(fā)送的假名的轉(zhuǎn)換候選(步驟S13),隨后發(fā)送轉(zhuǎn)換候選給客戶機(jī),作為預(yù)處理的執(zhí)行結(jié)果(步驟S14)。
客戶機(jī)等待執(zhí)行處理直到假名-日本漢字轉(zhuǎn)換服務(wù)器通知客戶機(jī)轉(zhuǎn)換候選為止(步驟S15)。當(dāng)客戶機(jī)被通知轉(zhuǎn)換候選時,客戶機(jī)顯示轉(zhuǎn)換候選(步驟S16)。隨后,客戶機(jī)從轉(zhuǎn)換候選選擇一個候選,并將所確定的結(jié)果通知服務(wù)器(步驟S17)。這里,假設(shè)選擇的是“犬”。
在預(yù)處理之后,假名-日本漢字轉(zhuǎn)換服務(wù)器作為后處理組織相應(yīng)于轉(zhuǎn)換候選的預(yù)言性數(shù)據(jù)(步驟S18)。例如,假名-日本漢字轉(zhuǎn)換服務(wù)器組織預(yù)言性數(shù)據(jù),使得如果選擇的是“狗”,則提取“與游玩”作為預(yù)言性數(shù)據(jù),而如果選擇的是“犬”,則提取“不喜歡”和“的名字”作為預(yù)言性數(shù)據(jù)。由于在本例中,已選擇了“犬”,因此假名-日本漢字轉(zhuǎn)換服務(wù)器通知客戶機(jī)相應(yīng)于“犬”的預(yù)言性數(shù)據(jù),作為后處理的結(jié)果(步驟S19)。
客戶機(jī)相應(yīng)地顯示所通知的預(yù)言性數(shù)據(jù)(步驟S20)。
如上所述,在第二個例子中,用于提取轉(zhuǎn)換候選的處理被注冊為預(yù)處理,而將用于組織預(yù)言性數(shù)據(jù)的處理注冊為后處理。在已完成用于提取轉(zhuǎn)換候選的處理的時候,服務(wù)器允許客戶機(jī)恢復(fù)控制。如此,由于由客戶機(jī)執(zhí)行的轉(zhuǎn)換候選的顯示和由服務(wù)器執(zhí)行的預(yù)言性數(shù)據(jù)的組織是同時進(jìn)行的,因此可以減少在指定漢字候選時顯示預(yù)言性數(shù)據(jù)的響應(yīng)時間。
(第三個例子)本發(fā)明第三個例子描述使用移動-圖象(moving-image)服務(wù)器作為服務(wù)器的情況下的客戶機(jī)-服務(wù)器系統(tǒng)。
在第三個例子中,“活動狀態(tài)”表示應(yīng)用當(dāng)前正在被用戶操作,而“不活動狀態(tài)”表示應(yīng)用當(dāng)前沒有被用戶操作。在第三個例子中使用的應(yīng)用可以是常駐應(yīng)用,或者是非常駐應(yīng)用。這里,常駐應(yīng)用指一種應(yīng)用,在接收到不活動的請求之后,在操作的同時進(jìn)入不活動狀態(tài)。非常駐應(yīng)用指一種應(yīng)用,在收到不活動請求時完全停止。在下面的描述中,每個應(yīng)用是常駐應(yīng)用。
在移動終端諸如移動電話中,當(dāng)電話應(yīng)用接收到電話呼叫請求時,電話應(yīng)用播放振鈴音以通知用戶有進(jìn)入的呼叫。移動-圖象應(yīng)用服務(wù)器再現(xiàn)帶有聲音的移動圖象。由于移動終端通常不能同時輸出兩種或多種聲音,因此爭用仲裁應(yīng)用確定應(yīng)用(例如,電話應(yīng)用和移動-圖象應(yīng)用服務(wù)器)之間的爭用,并允許每個應(yīng)用從其活動狀態(tài)轉(zhuǎn)移到其不活動狀態(tài)。按照慣例,在當(dāng)移動-圖象應(yīng)用服務(wù)器處于活動狀態(tài)中時有一個進(jìn)入的呼叫,電話應(yīng)用請求爭用仲裁應(yīng)用將電話應(yīng)用帶到活動狀態(tài)。爭用仲裁應(yīng)用隨后請求移動-圖象應(yīng)用服務(wù)器進(jìn)入不活動狀態(tài)。響應(yīng)于不活動請求,移動-圖象應(yīng)用服務(wù)器停止移動圖象,存儲中間信息,隨后通知爭用仲裁應(yīng)用移動-圖象應(yīng)用已進(jìn)入不活動狀態(tài)。爭用仲裁應(yīng)用相應(yīng)地通知電話應(yīng)用允許電話應(yīng)用進(jìn)入活動狀態(tài)。電話應(yīng)用隨后開始播放振鈴音。在常規(guī)方法中,如上所述,電話應(yīng)用必須等待開始播放振鈴單直到移動圖象應(yīng)用存儲中間信息為止,導(dǎo)致長周轉(zhuǎn)時間。
要克服該問題,在收到不活動請求時,按照本發(fā)明第三個例子的移動圖象應(yīng)用,將在用于將移動圖象應(yīng)用帶到不活動狀態(tài)的處理之中用于停止移動-圖象的處理注冊為預(yù)處理,而將用于存儲有關(guān)移動圖象應(yīng)用的中間信息為文件的處理注冊為后處理。
圖12是時序圖,示意性地示出按照第三個例子的客戶機(jī)-服務(wù)器系統(tǒng)的處理流程。如在圖12中所示,當(dāng)電話應(yīng)用處于不活動狀態(tài)(步驟S21)時,電話應(yīng)用已接收到進(jìn)入呼叫通知(步驟S22)。電話應(yīng)用相應(yīng)地通過同步通信請求爭用仲裁應(yīng)用確定是否允許電話應(yīng)用進(jìn)入活動狀態(tài)(步驟S23),從而進(jìn)入同步返回等待狀態(tài)(步驟S35)。
處于事件等待狀態(tài)中的爭用仲裁應(yīng)用(步驟S24)相應(yīng)地請求通過同步通信請求移動-圖象應(yīng)用服務(wù)器進(jìn)入不活動狀態(tài)(步驟S25),從而進(jìn)入同步返回等待狀態(tài)(步驟S31)。
作為預(yù)處理,處于活動狀態(tài)(步驟S26)的移動-圖象應(yīng)用服務(wù)器停止正在運(yùn)行的移動圖象(步驟S27),從而進(jìn)入不活動狀態(tài)(步驟S28)。移動-圖象應(yīng)用服務(wù)器隨后發(fā)送OK通知給爭用仲裁應(yīng)用移動-圖象應(yīng)用服務(wù)器已進(jìn)入不活動狀態(tài)(步驟S29)。之后,作為后處理,移動-圖象應(yīng)用服務(wù)器存儲有關(guān)移動圖象應(yīng)用的中間信息作為文件(步驟S30)。中間信息包括有關(guān)停止點、移動圖象的顯示位置、顏色調(diào)整等的信息。通過存儲這樣的中間信息作為文件,移動-圖象應(yīng)用服務(wù)器可以恢復(fù)移動圖象的再現(xiàn)。
當(dāng)處于同步返回等待狀態(tài)(步驟S31)的爭用仲裁應(yīng)用從移動-圖象應(yīng)用服務(wù)器接收到OK通知時,爭用仲裁應(yīng)用清除其同步返回等待狀態(tài)(步驟S32),并發(fā)送OK通知給電話應(yīng)用允許電話應(yīng)用進(jìn)入活動狀態(tài)(步驟S33),從而進(jìn)入事件等待狀態(tài)(步驟S34)。
響應(yīng)于來自爭用仲裁應(yīng)用的OK通知,電話應(yīng)用從同步返回等待狀態(tài)(步驟S35)轉(zhuǎn)到活動狀態(tài)(步驟S36),隨后開始播放其振鈴音(步驟S37)。如此,可以避免聲音之間的爭用。
如上所述,在第三個例子中,用于避免聲音之間爭用的最低必需處理被注冊為預(yù)處理,而將用于為再次再現(xiàn)移動圖象進(jìn)行準(zhǔn)備的處理注冊為后處理,由此可以減少電話應(yīng)用和爭用仲裁應(yīng)用中的周轉(zhuǎn)時間。
如上所述,在按照本發(fā)明的客戶機(jī)-服務(wù)器系統(tǒng)中使用的方法、服務(wù)器和客戶機(jī)使減少從客戶機(jī)通過同步通信進(jìn)行服務(wù)器功能請求時起直到客戶機(jī)接收到服務(wù)器功能完成的通知為止的周轉(zhuǎn)時間成為可能,因而對于具有很少硬件性能的設(shè)備或系統(tǒng)諸如移動電話或PDA是有用的。
雖然已詳細(xì)地描述了本發(fā)明,前面的描述在所有方面是說明性的而不是限制性的。應(yīng)該理解,可以在不脫離本發(fā)明的范圍的情況下設(shè)計出眾多的其它修改和變化方案。
權(quán)利要求
1.一種在客戶機(jī)-服務(wù)器分布式系統(tǒng)中使用的方法,在所述系統(tǒng)中客戶機(jī)對服務(wù)器進(jìn)行所希望的服務(wù)器功能調(diào)用,并且服務(wù)器執(zhí)行相應(yīng)于被調(diào)用的服務(wù)器功能的處理,其特征在于,所述方法包括下列步驟注冊為預(yù)處理,所述處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是一直到獲得對于客戶機(jī)所必需的最小信息時的點的處理;注冊為后處理,所述處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是在預(yù)處理之后執(zhí)行的處理;以及建立經(jīng)注冊的預(yù)處理和經(jīng)注冊的后處理與表示服務(wù)器功能的服務(wù)器功能標(biāo)識符之間的對應(yīng)。
2.如權(quán)利要求1所述的方法,其特征在于,還包括下列步驟由客戶機(jī)發(fā)送請求消息給服務(wù)器以調(diào)用所希望的服務(wù)器功能,請求消息包括表示所希望的服務(wù)器功能的服務(wù)器功能標(biāo)識符;由服務(wù)器從客戶機(jī)接收請求消息;由服務(wù)器執(zhí)行相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的預(yù)處理;由服務(wù)器獲得預(yù)處理的執(zhí)行結(jié)果;由服務(wù)器發(fā)送完成消息給客戶機(jī),完成消息包括預(yù)處理的執(zhí)行結(jié)果;在已發(fā)送了完成消息之后,由服務(wù)器執(zhí)行相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的后處理;以及由客戶機(jī)執(zhí)行基于預(yù)處理的執(zhí)行結(jié)果處理。
3.如權(quán)利要求2所述的方法,其特征在于,還包括下列步驟由服務(wù)器獲得后處理的執(zhí)行結(jié)果;由服務(wù)器發(fā)送后處理結(jié)果消息給客戶機(jī),后處理結(jié)果消息包括后處理的執(zhí)行結(jié)果;以及由客戶機(jī)執(zhí)行基于后處理的執(zhí)行結(jié)果處理。
4.如權(quán)利要求2所述的方法,其特征在于,還包括下列步驟如果接收到取消服務(wù)器功能調(diào)用的取消指令,則由客戶機(jī)預(yù)先注冊一個條件,所述條件用于基于取消指令來確定是否取消服務(wù)器功能調(diào)用;如果接收到取消指令,則由客戶機(jī)基于取消指令來確定是否取消服務(wù)器功能調(diào)用;以及如果確定取消服務(wù)器功能調(diào)用,則由客戶機(jī)取消服務(wù)器功能調(diào)用。
5.一種用于執(zhí)行由客戶機(jī)調(diào)用的服務(wù)器功能的服務(wù)器,其特征在于,包括預(yù)處理注冊部件用于注冊為預(yù)處理,所述處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是一直到獲得對于客戶機(jī)所必需的最小信息時的點的處理;后處理注冊部件,用于注冊為后處理,所述處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是在預(yù)處理之后執(zhí)行的處理;以及服務(wù)器功能對應(yīng)部件,用于建立經(jīng)注冊的預(yù)處理和經(jīng)注冊的后處理與表示服務(wù)器功能的服務(wù)器功能標(biāo)識符之間的對應(yīng)。
6.如權(quán)利要求5所述的服務(wù)器,其特征在于,還包括接收部件,用于從客戶機(jī)接收請求消息,請求消息包括表示由客戶機(jī)調(diào)用的服務(wù)器功能的服務(wù)器功能標(biāo)識符;預(yù)處理執(zhí)行部件,用于執(zhí)行相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的預(yù)處理并輸出預(yù)處理的執(zhí)行結(jié)果;發(fā)送部件,用于給客戶機(jī)發(fā)送完成消息,完成消息包括已由預(yù)處理執(zhí)行部件輸出的預(yù)處理的執(zhí)行結(jié)果;以及后處理執(zhí)行部件,用于在發(fā)送部件已發(fā)送完成消息之后,執(zhí)行相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的后處理。
7.如權(quán)利要求6所述的服務(wù)器,其特征在于后處理執(zhí)行部件輸出后處理的執(zhí)行結(jié)果;以及發(fā)送部件向客戶機(jī)發(fā)送后處理結(jié)果消息,后處理結(jié)果消息包括已由后處理執(zhí)行部件輸出的后處理的執(zhí)行結(jié)果。
8.一種用于對服務(wù)器進(jìn)行所希望的服務(wù)器功能調(diào)用的客戶機(jī),其特征在于,包括發(fā)送部件,用于發(fā)送請求消息給服務(wù)器以調(diào)用所希望的服務(wù)器功能,請求消息包括表示所希望的服務(wù)器功能的服務(wù)器功能標(biāo)識符;接收部件,用于從服務(wù)器接收完成消息,完成消息包括相應(yīng)于包括在請求消息中的服務(wù)器功能標(biāo)識符的預(yù)處理的執(zhí)行結(jié)果,預(yù)處理是由服務(wù)器執(zhí)行的;以及控制部件,用于基于已由接收部件接收到的預(yù)處理的執(zhí)行結(jié)果來執(zhí)行處理,其中,服務(wù)器功能標(biāo)識符與預(yù)處理和后處理相對應(yīng),預(yù)處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是一直到獲得對于客戶機(jī)所必需的最小信息時的點的處理,后處理是相應(yīng)于服務(wù)器功能的處理的一部分并且是在預(yù)處理之后執(zhí)行的處理。
9.如權(quán)利要求8所述的客戶機(jī),其特征在于,其中,服務(wù)器向客戶機(jī)發(fā)送后處理結(jié)果消息,后處理結(jié)果消息包括后處理的執(zhí)行結(jié)果,接收部件接收已從服務(wù)器發(fā)送的后處理結(jié)果消息,以及控制部件基于包括在后處理結(jié)果消息中的后處理的執(zhí)行結(jié)果來執(zhí)行處理。
10.如權(quán)利要求9所述的客戶機(jī),其特征在于,還包括取消條件注冊部件,用于如果接收到取消服務(wù)器功能調(diào)用的取消指令,則預(yù)先注冊一個條件,所述條件用于基于取消指令來確定是否取消服務(wù)器功能調(diào)用,其中如果接收到取消指令,則控制組件基于在取消條件注冊部件注冊的條件來確定是否取消服務(wù)器功能調(diào)用,并且如果確定取消服務(wù)器功能調(diào)用,則控制部件取消服務(wù)器功能調(diào)用。
全文摘要
在客戶機(jī)-服務(wù)器-分布式數(shù)據(jù)系統(tǒng)中的同步通信中,減少從客戶機(jī)調(diào)用服務(wù)器功能時起直到客戶機(jī)接收到服務(wù)器功能完成的通知為止的周轉(zhuǎn)時間。服務(wù)器包括預(yù)處理注冊部件用于注冊預(yù)處理;后處理注冊部件用于注冊后處理;服務(wù)器命令部件用于請求注冊預(yù)處理和后處理;以及服務(wù)器功能對應(yīng)部件用于建立預(yù)處理和后處理與服務(wù)器功能標(biāo)識符之間的對應(yīng)。當(dāng)服務(wù)器從客戶機(jī)接收到請求消息以調(diào)用服務(wù)器功能時,服務(wù)器執(zhí)行預(yù)處理并發(fā)送包括預(yù)處理的執(zhí)行結(jié)果的完成消息至客戶機(jī)。在發(fā)送完成消息之后,服務(wù)器執(zhí)行后處理。
文檔編號G06F9/54GK1581142SQ20041005641
公開日2005年2月16日 申請日期2004年8月6日 優(yōu)先權(quán)日2003年8月6日
發(fā)明者秦秀彥, 山下健 申請人:松下電器產(chǎn)業(yè)株式會社