(57)【特許請求の範囲】
【請求項１】
クロスプロセス通信のための方法であって、
コンピュータが、
複数のサービスモジュールをロード可能なプリセットコンテナプロセスをセットアップするステップと、
第１のプロセスによって送信されたクロスプロセス通信要求を受信するステップと、
前記クロスプロセス通信要求に対応したサービスモジュールを前記プリセットコンテナプロセスにロードするステップと、
前記クロスプロセス通信要求に従い前記第１のプロセスと前記プリセットコンテナプロセスとの間の通信チャネルをセットアップするステップと、
前記プリセットコンテナプロセスと前記第１のプロセスとの間で前記通信チャネルを通じてクロスプロセス通信を行うステップと
を実行し、
前記クロスプロセス通信要求に従い前記第１のプロセスで前記通信チャネルをセットアップするステップの前に、
前記第１のプロセスとの前記通信チャネルが存在するか否かを検知することと、
前記第１のプロセスとの前記通信チャネルが存在する場合に前記通信チャネルを多重化することと、
前記第１のプロセスとの前記通信チャネルが存在しない場合には前記クロスプロセス通信要求に従い前記第１のプロセスとの通信チャネルをセットアップすることと
を含むことを特徴とするクロスプロセス通信のための方法。
【請求項２】
請求項１に記載の方法であって、前記サービスモジュールがロードされた前記プリセットコンテナプロセスと前記第１のプロセスとの間で前記通信チャネルを通じて前記クロスプロセス通信を行うステップは、
前記クロスプロセス通信要求に対応した前記サービスモジュールがロードされているか否かを判断するために前記サービスモジュールのロード状態を確認することと、
ロードされていない場合には前記サービスモジュールをリロードし、前記プリセットコンテナプロセスで対話ＩＤを生成して、前記第１のプロセスへ応答を送信すること
をさらに含む方法。
【請求項３】
請求項１に記載の方法であって、前記クロスプロセス通信要求に従い前記第１のプロセスとの通信チャネルをセットアップするステップは、
前記クロスプロセス通信に指定されたモデルを前記クロスプロセス通信要求から取得することと、
前記プリセットコンテナプロセスにて前記指定されたモデルを呼び出すことと、
前記第１のプロセスと前記プリセットコンテナプロセスとの間に前記通信チャネルをセットアップすることと
をさらに含む方法。
【請求項４】
請求項３に記載の方法であって、前記クロスプロセス通信に指定されたモデルを前記クロスプロセス通信要求から取得することと、前記プリセットコンテナプロセスにて前記指定されたモデルを呼び出すステップの前に、
前記プリセットコンテナプロセスのステータスが「開放」となっているかを判断することと、
前記プリセットコンテナプロセスのステータスが開放の場合は、前記プリセットコンテナプロセスにて前記指定されたモデルを呼び出して、前記第１のプロセスと前記プリセットコンテナプロセスとの間で前記通信チャネルをセットアップするステップを実行することと、
前記プリセットコンテナプロセスが開放されていない場合は、前記プリセットコンテナプロセスを開放することと
を含む方法。
【請求項５】
請求項１に記載の方法であって、前記クロスプロセス通信は共有メモリ通信またはソケット通信である方法。
【請求項６】
第１のプロセスによって送信されたクロスプロセス通信要求を受信するように構成された受信モジュールと、
前記クロスプロセス通信要求に従い前記第１のプロセスと複数のサービスモジュールをロード可能なプリセットコンテナプロセスとの間の通信チャネルをセットアップするように構成されたチャネルセットアップモジュールと、
前記クロスプロセス通信要求に対応したサービスモジュールを前記プリセットコンテナプロセスにロードするように構成されたロードモジュールと
を備えたクロスプロセス通信のための装置であって、
前記サービスモジュールがロードされた前記プリセットコンテナプロセスが前記第１のプロセスと前記通信チャネルを通じてクロスプロセス通信を行い、
前記第１のプロセスとの前記通信チャネルが存在するか否かを検知し、
前記通信チャネルが存在する場合に前記通信チャネルを多重化して、
前記チャネルセットアップモジュールを始動して前記通信チャネルが存在しない場合には前記クロスプロセス通信要求に従い前記第１のプロセスとの通信チャネルをセットアップする、
ように構成された検知モジュールをさらに備えた、クロスプロセス通信のための装置。
【請求項７】
請求項６に記載の装置であって、前記ロードモジュールはさらに、前記クロスプロセス通信要求に対応した前記サービスモジュールがロードされているか否かを判断するために前記サービスモジュールのロード状態を確認して、ロードされていない場合には前記サービスモジュールをリロードし、前記プリセットコンテナプロセスで対話ＩＤを生成して、前記第１のプロセスに応答を送信するように構成された装置。
【請求項８】
請求項６に記載の装置であって、前記チャネルセットアップモジュールがさらに
前記クロスプロセス通信に指定されたモデルを前記クロスプロセス通信要求から取得するように構成されたピックアップユニットと、
前記プリセットコンテナプロセスにて前記指定されたモデルを呼び出して、前記第１のプロセスと前記プリセットコンテナプロセスとの間に前記通信チャネルをセットアップするように構成された開放ユニットと
を備える装置。
【請求項９】
請求項８に記載の装置であって、前記開放ユニットは
前記プリセットコンテナプロセスのステータスが「開放」となっているか否かを判断し、
前記プリセットコンテナプロセスのステータスが開放の場合は、前記プリセットコンテナプロセスで指定されたモデルを呼び出して、前記第１のプロセスと前記プリセットコンテナプロセスとの間で前記通信チャネルをセットアップするステップを実行して、
前記プリセットコンテナプロセスが開放されていない場合は、前記プリセットコンテナプロセスを開放する
ように構成されている装置。
【請求項１０】
請求項６に記載の装置であって、前記クロスプロセス通信は共有メモリ通信またはソケット通信である装置。
【請求項１１】
コンピュータ実行可能な命令を記録するコンピュータ記録媒体であって、前記コンピュータ実行可能な命令はコンピュータに、
複数のサービスモジュールをロード可能なプリセットコンテナプロセスをセットアップするステップと、
第１のプロセスによって送信されたクロスプロセス通信要求を受信するステップと、
前記クロスプロセス通信要求に対応したサービスモジュールを前記プリセットコンテナプロセスにロードするステップと、
前記クロスプロセス通信要求に従い前記第１のプロセスと前記プリセットコンテナプロセスとの間の通信チャネルをセットアップするステップと、
前記プリセットコンテナプロセスと前記第１のプロセスとの間で前記通信チャネルを通じてクロスプロセス通信を行うステップと
を実行させるための命令であり、
前記クロスプロセス通信要求に従い前記第１のプロセスとの前記通信チャネルをセットアップするステップの前に、
前記第１のプロセスとの前記通信チャネルが存在するか否かを検知することと、
前記第１のプロセスとの前記通信チャネルが存在する場合に前記通信チャネルを多重化することと、
前記第１のプロセスとの前記通信チャネルが存在しない場合には前記クロスプロセス通信要求に従い前記第１のプロセスとの通信チャネルをセットアップすることと
を含む、コンピュータ記憶媒体。
【請求項１２】
請求項１１に記載のコンピュータ記憶媒体であって、前記サービスモジュールがロードされた前記プリセットコンテナプロセスと前記第１のプロセスとの間で前記通信チャネルを通じて前記クロスプロセス通信を行うステップは、
前記クロスプロセス通信要求に対応した前記サービスモジュールがロードされているか否かを判断するために、前記サービスモジュールのロード状態を確認することと、
ロードされていない場合に前記サービスモジュールをリロードし、前記プリセットコンテナプロセスで対話ＩＤを生成して、前記第１のプロセスへ応答を送信すること
をさらに含む、コンピュータ記憶媒体。
【請求項１３】
請求項１１に記載のコンピュータ記憶媒体であって、前記クロスプロセス通信要求により前記第１のプロセスとの通信チャネルをセットアップするステップは、
前記クロスプロセス通信に指定されたモデルを前記クロスプロセス通信要求から取得することと、
前記プリセットコンテナプロセスにて前記指定されたモデルを呼び出すことと、
前記第１のプロセスと前記プリセットコンテナプロセスとの間に前記通信チャネルをセットアップすることと
をさらに含む、コンピュータ記憶媒体。
【請求項１４】
請求項１３に記載のコンピュータ記憶媒体であって、前記クロスプロセス通信に指定されたモデルを前記クロスプロセス通信要求から取得することと、前記プリセットコンテナプロセスで前記指定されたモデルを呼び出すステップの前に、
前記プリセットコンテナプロセスのステータスが「開放」となっているかを判断することと、
前記プリセットコンテナプロセスのステータスが開放の場合は、前記プリセットコンテナプロセスにて前記指定されたモデルを呼び出して、前記第１のプロセスと前記プリセットコンテナプロセスとの間で前記通信チャネルをセットアップするステップを実行することと、
前記プリセットコンテナプロセスが開放されていない場合は、前記プリセットコンテナプロセスを開放することと
を含む、コンピュータ記憶媒体。
【請求項１５】
請求項１１に記載のコンピュータ記憶媒体であって、前記クロスプロセス通信は共有メモリ通信またはソケット通信であるコンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に通信技術分野に関する。特に、本発明は、クロスプロセス通信のための方法および装置、ならびにコンピュータ記憶媒体に関する。
【背景技術】
【０００２】
クロスプロセス通信とは、異なるプロセスの間で行われる情報の移行または交換を意味する。ＱＱ（テンセント（Tencent）に開発されたインスタント・メッセンジャー・ソフトウェア）等のプログラムでは、FlashやIE（Internet Explorer）サービスを利用することができる。このため、ＱＱ主要プロセスとFlashプロセスやIEプロセスとの間でのクロスプロセス通信を実施する必要がある。従来のクロスプロセス通信の設定では、ＱＱ主要プロセスとFlashプロセスの間に共有メモリを設置して、この共有メモリを読むことを通して通信している。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
従来の設定を分析したところ、本開示の発明者らは少なくとも以下の欠点が存在することに気が付いた。
【０００４】
従来の設定では、クロスプロセス通信が起動されたときは必ず、メインプロセスと宛先プロセスとの間の通信チャネルとしての共有メモリが設置され、各宛先プロセスに個別のサービスモジュールがロードされていたため記憶容量の無駄を生じていた。
【課題を解決するための手段】
【０００５】
本開示に記載の実施例により、クロスプロセス通信のための方法および装置が提供される。本開示の技術は以下の通りである。
【０００６】
第１のプロセスによって送信されたクロスプロセス通信要求を受信することと、
前記クロスプロセス通信要求に従い前記第１のプロセスとの通信チャネルをセットアップすることと、
前記クロスプロセス通信要求に対応したサービスモジュールをロードすることと、
前記サービスモジュールがロードされたプリセットコンテナプロセスと前記第１のプロセスとの間で前記通信チャネルを通じてクロスプロセス通信を行うことと
を含むクロスプロセス通信のための方法。
【０００７】
第１のプロセスによって送信されたクロスプロセス通信要求を受信するように構成された受信モジュールと、
前記クロスプロセス通信要求に従い前記第１のプロセスとの通信チャネルをセットアップするように構成されたチャネルセットアップモジュールと、
前記クロスプロセス通信要求に対応したサービスモジュールをロードするように構成されたロードモジュールと
を備えたクロスプロセス通信のための装置であって、
前記サービスモジュールがロードされたプリセットコンテナプロセスが前記第１のプロセスと前記通信チャネルを通じてクロスプロセス通信を行う、クロスプロセス通信のための装置。
【０００８】
第１のプロセスによって送信されたクロスプロセス通信要求を受信することと、
前記クロスプロセス通信要求に従い前記第１のプロセスとの通信チャネルをセットアップすることと、
前記クロスプロセス通信要求に対応したサービスモジュールをロードすることと、
前記サービスモジュールクロスプロセスがロードされたプリセットコンテナプロセスと前記第１のプロセスとの間で前記通信チャネルを通じてクロスプロセス通信を行うことと
を含んだ方法を行って連絡の更新を通知するべく、コンピュータを制御するように構成されたコンピュータ実行可能な命令を記憶するためのコンピュータ記憶媒体。
【０００９】
従って、本開示の実施例に提供される技術の利点は、以下の通りである。
【００１０】
多数のサービスモジュールをロードできるプリセットコンテナプロセスは、入口としてセットアップされ、このためクロスプロセス通信チャネルをセットアップする際には、通信プロセスとプリセットコンテナプロセスとの間に通信チャネルをセットアップするだけでよい。対応するサービスモジュールはプリセットコンテナプロセスにロードされるためクロスプロセス通信プロセスのセットアップ手順を簡素化し、コードを削減して、通信効率を向上させる。
【００１１】
本開示の実施例または背景技術をより明確に説明するために、各実施例の図面または背景技術を以下に簡単に紹介する。下記の図面は、本開示の例示的な実施例を示し、当業者は、創意工夫なしにこれらの図面に基づいて他の図面を用いることができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、本開示の実施例によるクロスプロセス通信の方法を示すフローチャートである。
【図２】図２は、本開示の実施例によるクロスプロセス通信の方法を示すフローチャートである。
【図３】図３は、本開示の実施例によるクロスプロセス通信のための装置を示す概略図である。
【図４】図４は、本開示の実施例によるクロスプロセス通信のための装置を示す概略図である。
【図５】図５は、本開示の実施例によるクロスプロセス通信のための装置を示す概略図である。
【発明を実施するための形態】
【００１３】
本開示の目的、技術体系および利点をより明確にするために、図面を参照して以下に本開示のより詳細な説明を記載する。
【００１４】
実施例１
本開示の実施例は、コードを節約するためのクロスプロセス通信の方法を提供する。図１を参照し、本方法は下記を含んでいる。
【００１５】
１０１：第１のプロセスによって開始されるクロスプロセス通信の要求を受信すること。
【００１６】
１０２：クロスプロセス通信の要求に応じて第１のプロセスとの通信チャネルをセットアップすること。
【００１７】
１０３：クロスプロセス通信の要求に対応したサービスモジュールをロードすること。このため、サービスモジュールと共にロードされたプリセットコンテナプロセスは、第１のプロセスでクロスプロセス通信を実施することができる。
【００１８】
ここで、先のクロスプロセス通信の要求による第１のプロセスとの通信チャネルをセットアップする前に、
第１のプロセスとの通信チャネルが存在するか否かを検出して、第１のプロセスとの通信チャネルが存在する場合には通信チャネルを多重化し、または第１のチャネルで通信チャネルが存在しない場合にはクロスプロセス通信の要求によって第１のプロセスとの通信チャネルをセットアップすることを、含んでいる。
【００１９】
ここで、クロスプロセス通信要求による第１のプロセスとの通信チャネルをセットアップするステップは、具体的に、
クロスプロセス通信によって指定されたモデルをクロスプロセス通信要求から取得することと、
プリセットコンテナプロセスで指定されたモデルを呼び出して、第１のプロセスとプリセットコンテナプロセスとの間で通信チャネルをセットアップすることを、含んでいる。
【００２０】
ここで、プリセットコンテナプロセスは、システムモデル、プロセスモデル、セッションモデルおよび共有モデルを含んでいる。
【００２１】
多数のサービスモジュールをロードできるプリセットコンテナプロセスは入口としてセットアップされているため、クロスプロセス通信チャネルをセットアップする際には、通信プロセスとプリセットコンテナプロセスとの間に通信チャネルをセットアップするだけでよく、これにより対応サービスモジュールがプリセットコンテナプロセスにロードされて、クロスプロセス通信プロセスのセットアップ手順を簡略化し、コードを削減し、通信効率を向上させる。
【００２２】
実施例２
本開示の実施例により、経済的なコードを実施するためのクロスプロセス通信の方法を提供する。第１のプロセスとしてクロスプロセス通信を開始するプロセスを実施する実施例であり、図２を参照し、本方法は以下を含んでいる。
【００２３】
２０１：第１のプロセスはプリセットコンテナプロセスに対してクロスプロセス通信要求を開始し、このクロスプロセス通信要求は第１のプロセスによって動的に生成される二つのＧＵＩＤ（Globally Unique Identifier）を持っている。これら二つのＧＵＩＤは、第１のプロセス識別子と第２のプロセス識別子を含んでいる。第１のプロセス識別子は、クロスプロセス通信要求を開始するプロセスの識別に使用され、第２のプロセス識別子はクロスプロセス通信の宛先プロセス、つまりプリセットコンテナプロセスの識別に使用される。
【００２４】
具体的には、これら二つのＧＵＩＤは、各プロセスを識別することと、クロスプロセス通信の二つの終端での共有メモリを新設する機能を有する。第１のプロセスからプリセットコンテナプロセスへの通信用メモリは第２のプロセス識別子ＧＵＩＤによって命名され、第１のプロセスと共有される。このようなメモリはプリセットコンテナプロセスの開始によってセットアップされ、プリセットコンテナプロセスが終了することによって解放される。一方、プリセットコンテナプロセスから第１のプロセスへの通信用メモリは第１のプロセスの専用メモリとして割り当てられている。競合を回避するために、第１のプロセスは、第２のプロセス識別子ＧＵＩＤを、第１のプロセスからプリセットコンテナプロセスまでの一方向チャネルを通じてプリセットコンテナプロセスへ送信する。
【００２５】
本開示の実施例によれば、第１のプロセスは、例えば、ＱＱ，ＩＭ等の種々のメインプロセスであってもよく、また第２のプロセスはプリセットコンテナプロセスであってもよい。プリセットコンテナプロセスとは、本開示の実施例によるクロスプロセス通信に使用するコンテナの一種であることを述べておく。プリセットコンテナプロセスは、クロスプロセス通信セットアップ要求を受信すると、この通信を開始するプロセスからコンテナプロセスまでの通信チャネルを設定するためにと、その要求の種類に応じた対応サービスモジュールをロードするために使用される。
【００２６】
２０２：プリセットコンテナプロセスはクロスプロセス通信要求を受信して、クロスプロセス通信に指定されたモデルを取得する。
【００２７】
プリセットコンテナプロセスはシステムモデル、プロセスモデル、セッションモデルおよび共有モデルを含み、上記モデルはこれら４つのモデルの中の１つ以上のモデルであることを述べておく。
【００２８】
２０３：プリセットコンテナのステータスが「開放」となっているかどうかを判断し、プリセットコンテナのステータスが開放の場合はステップ２０５へ進み、開放でない場合はステップ２０４へ進む。
【００２９】
この判断方法は種々あり、サービスハンドラまたはサービスプロセスを検知することによって判断できるが、本開示の実施例はこれに限定されない。
【００３０】
２０４：プリセットコンテナの開放
具体的には、プリセットコンテナが開設されると、その後第１のプロセスからプリセットコンテナへのチャネルが開始するように実行され、その後に続くチャネルのセットアッププロセスを容易にする。
【００３１】
２０５：プリセットコンテナプロセス内で指定されたモデルを呼び出して、第１のプロセスとプリセットコンテナプロセスとの間に通信チャネルをセットアップする。
【００３２】
当業者であれば、プリセットコンテナプロセスは、異なる要求に応えるために多様なモデルを含むことを理解するであろう。しかしながら、プリセットコンテナはパッケージ化されたコードである一様な入口と出口を有する。プリセットコンテナは、進入の日付を受信して進入のデータ、プロセスデータまたは操作に基づく対応事前プロセスを固有のデータ出口から出力できる限り、システムに特有の入口を備えている。
【００３３】
ステップ２０５の前に以下を含むことができる。クロスプロセス通信を開始するプロセスとプリセットコンテナとの間に通信チャネルが存在するか否かを検知すること、通信チャネルが存在する場合には通信チャネルを多重化すること、または要求の種類に応じて主要プロセスとプリセットコンテナとの間に通信チャネルをセットアップすること。通信チャネルが存在する場合、このステップは、既存の通信チャネルを通じた通信を可能にでき、サービスモジュールをロードする際は、既存のモジュールをアンロードした後に既存のモジュール、または、対応サービスモジュールに基づいてロードしてもよい。このステップは、チャネルのセットアッププロセスを不要とすることができ、またコードを削減できる。
【００３４】
２０６：クロスプロセス通信要求に応じて、クロスプロセス通信要求に対応したサービスモジュールをロードすること。
【００３５】
サービスモジュールにとってコンテナモデルは透過であり、実行されるコンテナモジュールの種類には関係がない。好ましくは、プリセットコンテナは具体的にはＡｐｐコンテナでもよく、これは異なるサービスモジュール用プロセスをロードでき、アプリケーションプログラムのメインプロセスと通信できることを意味する。各コンテナ体は一つ以上のサービスモジュールをロードでき、所望によりサービスモジュールを動的にロードできる。サービスモジュールとは特定の機能を実行できるＤＬＬを意味し、ＤＬＬは各規制に応じた進入機能を送出する。
【００３６】
さらに、サービスモジュールがロードされたプリセットコンテナプロセスは、上記のステップ２０１から２０６を通して、通信チャネルを通じて第１のプロセスとのクロスプロセス通信を行えるようにした後には、コンテナのロード状態を確認する必要があり、これは、サービスモジュールのロード状態を確認してクロスプロセス通信要求に対応したサービスモジュールがロードされているか否かを判断することを意味する。ロードされていない場合には、サービスモジュールをリロードして、コンテナは対話ＩＤ等の識別子を生成して第１のプロセスに応答する。結果としてサービスモジュールのエクスポート関数ＯｎＳｅｓｓｉｏｎＣｒｅａｔｅが実行されて、新たな対話がセットアップされたことを知らせる。
【００３７】
サービスモジュールが実行されている間に第１のプロセスがサービス待機ハンドラを呼び出してもよいことを述べておく。サービスプロセスが終了すると、第１のプロセスは対話を終了させて、対話の異常中断の知らせを出す。上位のアプリケーションは、必要に応じて対話を立て直すか否かを判断することもできる。サービスモジュールに大きなバグが存在する場合、個々の崩壊は結果として連続した崩壊、そしてサービスモジュールの再始動をもたらし、さらには、ＣＰＵ占有率を１００％まで到達させて、ユーザに悪い影響を及ぼす。このため、再始動回数の最大値を設定でき、好ましくは、この回数は３回であってもよい。またさらに、サービスモジュールは、個別のデータ受信スレッドを有し、データが受信されて業務が行われる場所であるメインスレッドへ一斉送信される。メインスレッドが中断している場合には、データ検知スレッドが検知してもよい。検知結果が主要スレッドが中断していることを示すと、第１のプロセスに知らせるためにセマフォを使用してもよく、これにより第１のプロセスは対話を終了させて、対話の異常中断の知らせを出すことができる。そして第１のプロセスは必要に応じて対話を再開するかどうかを判断できる。
【００３８】
上記の実施例においてクロスプロセス通信は、具体的に、共有メモリ通信またはソケット通信であってもよい。ソケット通信が使用中の場合は、対話のストリーミングデータ通信とＴＣＰを介した１対多接続管理の説明をしたほうがより自然であろう。ここで、共有メモリ通信とは、セマフォと共有メモリに基づく巡回キューによって実行されるデータ通信の一種であり、詳細な内容は現在の技術において周知であるため、ここでは記載しない。
【００３９】
本開示が提供する方法によれば、多数のサービスモジュールをロードできるプリセットコンテナは入口にセットアップされているため、クロスプロセス通信をセットアップする場合には通信プロセスとプリセットコンテナプロセスとの間に通信チャネルをセットアップするだけで、対応するサービスモジュールがプリセットコンテナプロセスにロードされて、クロスプロセス通信のセットアップ手順を簡略化され、コードを削減して通信効率を向上させる。
【００４０】
実施例３
本開示の実施例によれば、コード削減のためにクロスプロセス通信用の装置が提供される。図３を参照し、本装置は以下を含んでいる。
【００４１】
第１のプロセスから送信されたクロスプロセス通信要求を受信するように構成された受信モジュール３０１。
【００４２】
クロスプロセス通信の要求により、第１のプロセスとの通信チャネルをセットアップするように構成されたチャネルセットアップモジュール３０２。
【００４３】
クロスプロセス通信要求に応じたサービスモジュールをロードするように構成されたロードモジュール３０３。サービスモジュールがロードされたプリセットコンテナプロセスは通信チャネルを通じて第１のプロセスとのクロスプロセス通信を行う。
【００４４】
一つの実施例によれば、ロードモジュール３０３はさらにサービスモジュールのロード状態を確認するために使用してもよく、これによりクロスプロセス通信要求に対応したサービスモジュールがロードされているか否かを判断する。ロードされていない場合にはサービスモジュールはリロードされ、コンテナは対話ＩＤを生成して第１のプロセスに応答する。
【００４５】
図４を参照し、本装置はさらに以下を含んでいる。
【００４６】
第１のプロセスとの通信チャネルが存在するか否かを検知するように構成された検知モジュール３０４は、通信チャネルが存在する場合には通信チャネルを多重化し、または、通信チャネルが存在しない場合にはクロスプロセス通信要求に応じた第１のプロセスとの通信チャネルをセットアップするようにチャネルセットアップモジュールを開始させる。
【００４７】
図５を参照し、チャネルセットアップモジュール３０２は以下を含んでいる。
【００４８】
クロスプロセス通信により指定されたモデルをクロスプロセス通信要求から取得するために使用するピックアップユニット３０２ａ。
【００４９】
プリセットコンテナプロセスにおいて指定されたモデルを呼び出して、第１のプロセスとプリセットコンテナプロセスとの間に通信チャネルをセットアップするために使用する開放ユニット３０２ｂ。
【００５０】
一つの実施例によれば、開放モジュール３０２ｂは、さらにプリセットコンテナのステータスが「開放」となっているかどうかを判断するために使用できる。プリセットコンテナのステータスが開放の場合には、プリセットコンテナプロセスで指定されたモデルを呼び出して、第１のプロセスとプリセットコンテナプロセスとの間に通信チャネルをセットアップし、プリセットコンテナプロセスのステータスが開放でないときにはプリセットコンテナを開放させる。
【００５１】
プリセットコンテナプロセスは、システムモデル、プロセスモデル、セッションモデルおよび共有モデルを含んでいる。
【００５２】
一つの実施例によれば、クロスプロセス通信は共有メモリ通信またはソケット通信であってもよい。
【００５３】
本開示の実施例による装置は、方法に関する実施例と同じ概念に基づいており、詳細な内容は方法の実施例の記述にあるため、ここでは記載しない。
【００５４】
本開示の実施例による技術の全部または一部はプログラムに命令された対応ハードウェアで実施でき、このようなプログラムは、ＲＯＭ，ＲＡＭ、磁気ディスクまたは光ディスク等のプログラムコードを記憶できる種々の媒体を含んだ読取可能な記憶媒体内に記憶できる。
【００５５】
本開示はさらに、コンピュータが連絡の更新を通知するために上述の方法を行うための各命令を実行している間に、コンピュータに実行可能な命令を記憶したコンピュータ記憶媒体を提供する。
【００５６】
上述の例示的な実施例の記載は、本発明を限定することを意図していない。本発明の精神と原理内のあらゆるの変更、置換及び改良も請求項に含む。
【図１】
0005793574.tif 000002
【図２】
0005793574.tif 000003
【図３】
0005793574.tif 000004
【図４】
0005793574.tif 000005
【図５】
0005793574.tif 000006