JP2004030312A - マルチスレッド同期制御方式 - Google Patents

マルチスレッド同期制御方式 Download PDF

Info

Publication number
JP2004030312A
JP2004030312A JP2002186654A JP2002186654A JP2004030312A JP 2004030312 A JP2004030312 A JP 2004030312A JP 2002186654 A JP2002186654 A JP 2002186654A JP 2002186654 A JP2002186654 A JP 2002186654A JP 2004030312 A JP2004030312 A JP 2004030312A
Authority
JP
Japan
Prior art keywords
message
processing
thread
transmission
queue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2002186654A
Other languages
English (en)
Inventor
Shigenobu Takayama
高山 茂伸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2002186654A priority Critical patent/JP2004030312A/ja
Publication of JP2004030312A publication Critical patent/JP2004030312A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】複数のプロセス、処理スレッド間の同期をとるためのメッセージを並行して送受信し、オブジェクト管理の処理中に受信したメッセージを先読みしてメッセージの処理時間を短縮し、また送信側と受信側でN対Nの同期を可能にする。
【解決手段】メッセージの送受信スレッド、受信メッセージキュー、送信メッセージキュー、未処理メッセージキュー、オブジェクトを登録管理するオブジェクト管理手段、受信メッセージが同期型メッセージの場合は優先して登録し該当処理を実行させる返信メッセージを送信し、非同期型メッセージの場合、シグナル状態の時には登録処理し、また非シグナル状態の時には未処理メッセージキューに格納し、受信メッセージキューに同期型メッセージがない場合には待機中の非同期型メッセージの登録処理をするメッセージ処理スレッドとを備える。
【選択図】    図1

Description

【0001】
【発明の属する技術分野】
この発明は複数のプロセスまたはスレッドが同期をとりながら、一連の処理を分担して並列に実行する並列処理システムにおけるマルチスレッド同期制御方式に関するものである。
【0002】
【従来の技術】
並列処理とは、複数のプロセッサを搭載したマシンにおいて、1つの処理を複数のプロセスまたはスレッドで分担して同時に処理することで、高速化を実現する処理方法である。このような並列処理においては、各スレッド間でメッセージを用いて同期を取る必要がある。従来の同期化方式示す技術として、特開平5−303503号公報「同期化メッセージ通信装置」がある。
【0003】
図19は上記公報の同期化方式の構成を示すブロック図である。図において、1は記憶部で、受信タスク識別子と送信タスク識別子との組である送受信情報を複数記憶する手段である。2は待ち部で、タスク再開ポイントを指定して自タスクをタスク待ち状態へ移行する手段である。3は実行部で、タスクの実行を行う手段である。4は受信部で、タスクを指定してメッセージの受信を行う手段である。5は送信部で、自タスク識別子を送信タスク識別子とし、送信先タスクの識別子を受信タスク識別子として作成した送受信情報を記憶部1に記憶させた後にメッセージを送信する手段である。6は解除部で、記憶部1から自タスク識別子を含む送受信情報をすべて削除する手段である。7は全受信部で、記憶部1から受信タスク識別子が自タスク識別子と等しい送受信情報から送信タスク識別子を全て取り出した後、個々の送信タスク識別子に対応する分だけ受信部4を呼出す手段である。8は全実行部で、記憶部1から受信タスク識別子が自タスク識別子と等しい送受信情報から送信タスク識別子を全て取り出した後、個々の送信タスク識別子に対応する分だけ実行部3を呼出す手段である。9は全送信部で、記憶部1から受信タスク識別子が自タスク識別子と等しい送受信情報から送信タスク識別子を全て取り出した後、個々の送信タスク識別子に対応する分だけ送信部5を呼出した後、待ち部2を呼出す手段である。10は判定部で、自タスクが受信タスク状態であれば、全実行部8を呼出した後に、全送信部9を呼出す手段である。
【0004】
次に動作について説明するが、始めに送信側のタスクの動作を説明する。
今、判定部10が送信タスク状態となっているとすると、まず、送信部5は、送信タスクの要求を受けて受信タスクにメッセージを送信し、記憶部1へ送受信情報を設定し、タスク再開ポイントとして全受信部7に渡して待ち部2を起動する。これにより、待ち部2は、全受信部7をタスク再開ポイントとして、タスク待ち状態に移行する。次に、全受信部7が起動され、メッセージを受信した後に記憶部1を起動する。次に、判定部10は、状態変数が送信タスク状態であるため実行を終了する。
【0005】
次に、受信タスク側としての動作を説明する。
今、判定部10の状態変数は受信タスク状態となっている。まず、全受信部7は、記憶部1の中で自タスクの識別子と等しい受信タスク識別子を持つ送受信情報から送信タスク識別子を取り出し、それらに対応する全ての送信タスクに対して送信タスク毎に受信部4を起動する。これにより、受信部4は指定された送信タスクからメッセージを受信する。この動作は、送信タスクの数だけ繰り返される。
【0006】
次に、全受信部7は判定部10を起動する。判定部7は、状態変数が受信タスク状態であるため全実行部8を起動する。これにより、全実行部8は、記憶部1の中で、自タスク識別子と等しい受信タスク識別子を持つ送受信情報から送信タスク識別子を取り出し、それらに対応する全ての送信タスクに対して送信タスク毎に実行部3を起動する。これにより実行部3は、受信タスクを実行する。この動作は、送信タスクの数だけ繰り返される。次に、判定部10は全送信部9を起動する。全送信部9は、記憶部1の中で、自タスク識別子と等しい受信タスク識別子を持つ送受信情報から送信タスク識別子を取り出し、それらに対応する全ての送信タスクに対して送信タスク毎に送信部5を起動する。これにより、送信部5は送信タスクへの返信を行う。この動作は、送信タスクだけ繰り返される。次に、全送信部9は解除部6を起動し、解除部6は記憶部1から自タスクの識別子を含む送受信情報を削除する。次に、全送信部9は待ち部2を起動する。待ち部2は、全受信部7をタスク再開ポイントとして、タスク待ち状態へ移行する。
【0007】
【発明が解決しようとする課題】
従来の同期化方式は以上のように構成されているので、受信メッセージを同時に取り出して、全メッセージについて同時にまとめて処理を行うことで性能向上を図っている。しかし、送受信を行うスレッドと処理を行うスレッドが同じであるために、メッセージ処理中に送られてきたメッセージを同時に処理することができず、性能面で問題があった。また、従来の同期化方式の装置では、ディスパッチの回数を削減してオーバーヘッドを削減するものであり、メッセージ処理そのものの時間を短縮するために先読みを行うわけではない。さらに、1つのメッセージは、送信側と受信側で1対1の通信にしか適用できないため、複数のスレッド間でスレッドの実行順序を決める場合には適用できないなどの課題があった。
【0008】
この発明は上記のような課題を解決するためになされたもので、複数のプロセスまたは複数の処理スレッド間の同期をとるためのメッセージを並行して送受信し、オブジェクト管理手段で、メッセージの処理対象となるオブジェクトの参照・登録中に受信したメッセージを先読みすることでメッセージの処理時間そのものを短縮し、また送信側と受信側でN対Nの同期を可能にするマルチスレッド同期制御方式を得ることを目的とする。
【0009】
【課題を解決するための手段】
この発明に係るマルチスレッド同期制御方式は、一連の処理を分担して並列処理する複数のプロセスまたは複数の処理スレッド間の同期制御を行うマルチスレッド同期制御方式において、複数のプロセスまたは複数の処理スレッド間の同期をとるメッセージを複数のプロセスまたは複数の処理スレッドと送受信する送受信スレッドと、送受信スレッドが受信したメッセージを順次格納する受信メッセージキュー、複数のプロセスまたは複数の処理スレッドに送信する返信メッセージを格納する送信メッセージキューおよび受信時に読み飛ばしたメッセージを格納し待機させる未処理メッセージキューを有するメッセージキュー手段と、複数のプロセスまたは複数の処理スレッドにおける各処理状態を通知するオブジェクトを登録し管理するためのオブジェクト管理手段と、受信メッセージキューに格納された受信メッセージが同期型メッセージの場合、当該同期型メッセージを優先し当該メッセージの処理対象となるオブジェクトをオブジェクト管理手段で参照して登録すると共に、複数のプロセスまたは複数の処理スレッドの該当する処理を実行させる返信メッセージを送信メッセージキューに格納し、一方、受信メッセージキューに格納されたメッセージが非同期型メッセージの場合、オブジェクト管理手段の当該メッセージの処理対象となるオブジェクトがシグナル状態の時には当該メッセージを処理し、また非シグナル状態の時には当該非同期型メッセージを未処理メッセージキューに格納し、受信メッセージキューに同期型メッセージがない場合には未処理メッセージキューに格納した待機中の非同期型メッセージについて処理するメッセージ処理スレッドとを備えたものである。
【0010】
この発明に係るマルチスレッド同期制御方式は、メッセージ処理スレッドは、受信メッセージキューに格納された受信メッセージが非同期型メッセージの場合、当該非同期型メッセージのうちから特定のメッセージのみを判定した後、当該メッセージの処理対象となるオブジェクトをオブジェクト管理手段でシグナル状態か調べて未処理メッセージキューに格納する対象とするようにしたものである。
【0011】
【発明の実施の形態】
以下、この発明の実施の一形態を説明する。
実施の形態1.
図1はこの発明の実施の形態1乃至実施の形態3によるマルチスレッド同期装置の構成を示すブロック図である。図において、100は複数のスレッド間の同期を制御する同期制御プロセスである。同期制御プロセス100の構成において、102はメッセージの送受信を行う送受信スレッド、103は同期制御プロセス100が受信するメッセージを処理するメッセージ処理スレッド、104は受信メッセージを格納する受信メッセージキュー、105は送信するメッセージを格納する送信メッセージキュー、106は読み飛ばしたメッセージを格納する未処理メッセージキュー、107はオブジェクトを管理するためのオブジェクト管理装置(オブジェクト管理手段)である。ここでは、メッセージ処理スレッド103により受信メッセージの処理を行うが、それは、オブジェクト管理装置107を用いてメッセージの処理対象となるオブジェクトを参照したり登録し、返信メッセージを作成することである。
【0012】
送受信スレッド102において、121は送信部、122は受信部である。メッセージ処理スレッド103において、131は処理部、132は判定部である。オブジェクト管理装置107において、110,111,112はオブジェクトである。160s,161sはオブジェクト110がシグナル状態になるのを待機しているスレッドオブジェクト、117はスレッドオブジェクト160sとスレッドオブジェクト161sからなるオブジェクト待ちリストである。
【0013】
150,151は処理プロセス、160,161,162は処理スレッドである。ここで、受信部122は、処理プロセス150,151または処理スレッド160,161,162から来たメッセージを受信して、受信メッセージキュー104に格納する。送信部121は、送信メッセージキュー105から格納されたメッセージを取り出して、送信先のプロセス150,151または処理スレッド160,161,162にメッセージを送る。処理部131はメッセージの処理を行い、判定部132は受信したメッセージが同期型メッセージか非同期型メッセージかの判定を行う。
【0014】
処理プロセス150は並列処理を行う手段で、そのため2つの処理スレッド160と161を有し、また処理プロセス151は処理スレッド162を有する。これら処理スレッド160,161,162は、同期制御プロセス100とメッセージの送受信を行い、スレッドの実行順序を決めて同期をとる。それぞれの処理スレッド160,161,162は、同期制御プロセス100にメッセージを送信する送信部170、同期制御プロセス100からメッセージが来るまで待機する待ち部171、実際のスレッドの処理を行う処理部172、同期制御プロセス100からメッセージを受信する受信部173を有する。
【0015】
図2は実施の形態1に係るオブジェクト管理装置107が管理するオブジェクト110の構成を示す説明図である。ここで、オブジェクト110とは、例えばイベント、ミューテックス(mutex)、セマフォ(semaphore)などのことである。オブジェクト110は、オブジェクト名200、オブジェクト識別子201、オブジェクトタイプ202、オブジェクトの状態203、オブジェクト固有の情報204を有する。オブジェクト名200はオブジェクトの名称を表し、名称のないオブジェクトの場合はゼロが格納される。オブジェクト識別子201は、全てのオブジェクトに対して一意な値が割り振られる。オブジェクトタイプ202は、上記イベントやミューテックスなどを示す。オブジェクトの状態203は、シグナル状態または非シグナル状態をとる。ここで、シグナル状態とはスレッドが処理を行うことができるオブジェクトの状態(例えば、信号機でいえば青信号)を表し、また非シグナル状態とはスレッドが処理を行えないオブジェクトの状態(赤信号)を表す。非シグナル状態にある場合、スレッドはシグナル状態になるまで待機することになる。オブジェクト固有の情報204には、オブジェクトタイプ毎にそのタイプ固有の情報が格納される。
【0016】
図3は、実施の形態1に係るスレッドオブジェクト160sの構成を示す説明図で、図において、スレッドオブジェクト160sは、並列処理を行う処理スレッド160と1対1に対応づけられ、処理スレッド160が、オブジェクト110(図2)がシグナル状態になるまで待機していることを示す。スレッドオブジェクト160sは、処理スレッド160が属する処理プロセス150のプロセス識別番号(識別子)210、処理スレッド160のスレッド識別番号(識別子)211、同期制御プロセス100が処理スレッド160との送受信に用いる送受信用ディスクリプタ212から構成される。
【0017】
図4は実施の形態1に係る処理スレッド160と同期制御プロセス100の間で送受信されるメッセージ140の構成を示す説明図で、図において、メッセージ140は、メッセージ140を送信した処理プロセス150のプロセス識別番号220、処理スレッド160のスレッド識別番号221、メッセージタイプ222およびタイプ毎のメッセージ固有の情報223からなる。
メッセージのタイプは大きく分類すると、同期型メッセージと非同期型メッセージの2種類がある。同期型メッセージは、メッセージを送ったプロセスまたは処理スレッドが他のプロセスや他の処理スレッドの動作や状態には無関係に、同期制御プロセス100が送受信できるもので、オブジェクトの生成・削除、オブジェクトの状態変更がこれにあたる。非同期型メッセージは、他のプロセスや他の処理スレッドの動作や状態によって、同期制御プロセス100がすぐに返信できる場合と返信できない場合があるメッセージである。オブジェクトがシグナル状態になるのを待機するメッセージがこれにあたる。
【0018】
図5はこの発明の実施の形態1および実施の形態2に係るメッセージ処理スレッド103の動作手順を示すフローチャートである。
まず、受信メッセージキュー104にメッセージがあるかどうかを調べる(ステップST1)。メッセージ140があれば、それが同期型メッセージか非同期型メッセージかどうかを調べる(ステップST2)。同期型メッセージであった場合には、そのメッセージ140を処理し(ステップST4)、必要であれば処理結果のメッセージ140rを作成し、メッセージ140rの送信が必要かどうか調べる(ステップST5)。メッセージ140rの送信が必要であれば、そのメッセージ140rを送信メッセージキュー105に格納する(ステップST6)。メッセージ140rの送信が不要な場合は、ステップST6をスキップして再びステップST1に戻り、次のメッセージについて同じ処理を行う。
【0019】
一方、ステップST2において、メッセージ140が非同期型メッセージであった場合には、メッセージの処理対象となるオブジェクトがシグナル状態かどうかを調べる(ステップST3)。シグナル状態であった場合には、ステップST4に進みメッセージを処理する。また、非シグナル状態であった場合には、未処理メッセージキュー106に格納して、次のメッセージを先読みするためステップST1に戻る。
ステップST1において、次のメッセージがない場合には、未処理メッセージキュー106に、前に読み飛ばしたメッセージがあるかどうかを調べ(ステップST7)、あればそのメッセージを処理するためステップST4に進む。未処理メッセージキュー106にメッセージがなければ、次のメッセージを受信するまで待機する(ステップST8)。
【0020】
図6は並列処理を行う処理プロセス150の動作手順を示すフローチャートである。
処理部172が処理を行い(ステップST50)、処理スレッド160,161の実行順序の同期が必要かを調べ(ステップST51)、必要な場合には同期処理用のメッセージ140を作成する(ステップST52)。この作成されたメッセージ140を、送信部170により同期制御プロセス100宛に送信し(ステップST53)、待ち部171は返信メッセージ140rを受信するまで待機する(ステップST54)。メッセージ140rが送られてきた場合、受信部173によりこれを受信して(ステップST55)処理部172の処理に戻る。
【0021】
図7は、3つの処理スレッド160,161,162が一連の処理A,B,Cを分担して、並列処理を行う場合の模式図である。
処理スレッド160は処理Aを担当し、処理スレッド161は処理Cを担当し、処理スレッド162は処理Bを担当する。ここで、処理A,B,Cは、アルファベット順に処理が開始されるものと定義して、3つの処理スレッド160,161,162の実行順序を決めるものとする。
まず準備処理として、処理スレッド160は、処理Aの状態を知らせるイベントを生成するため、同期制御プロセス100にイベントを作成するメッセージを送る(ステップST100)。同様に、処理スレッド161は処理Cの状態を知らせるイベントを生成するため、同期制御プロセス100にイベントを作成するメッセージを送り(ステップST120)、また、スレッド162も処理Bの状態を知らせるイベントを生成するため、同期制御プロセス100にイベントを作成するメッセージを送る(ステップST140)。
【0022】
図8は処理Aの場合におけるメッセージの構成を示す。処理Aは無条件に処理を開始できるので、初期状態としてシグナル状態を設定する。図8のメッセージ300は同期型メッセージである。同期制御プロセス100では、送受信スレッド102の受信部122がメッセージ300を受信して受信メッセージキュー104に格納する。
次いで、同期制御プロセス100において、メッセージ処理スレッド103が前述の図5のフローチャートに従った処理を行う。今の場合、メッセージ300は同期型メッセージなので、このことを判定部132で判定して本メッセージ300の処理を行う(ステップST4)。この場合のメッセージタイプはイベント生成なので、図9に示すイベントオブジェクト400を生成して、オブジェクト管理装置107に登録する。登録直後は、本イベントのオブジェクト待ちリスト117は空である。次に、メッセージ処理スレッド103は、イベントオブジェクト400の生成が成功したことを通知する図8のメッセージ300rを作成し、送信するためこのメッセージ300rを送信メッセージキュー105に格納する(図5ステップST6)。次いで、送受信スレッド102の送信部121が送信メッセージキュー105からメッセージ300rを取り出し、処理スレッド160に送信する。
【0023】
処理Bについては図10に示すメッセージ301を同様に送信する。処理Bは無条件には開始できないので、初期状態としては非シグナル状態を設定する。また、生成されるイベントオブジェクトは図11に示す401である。処理Cについても処理Bと同様に行われる。
【0024】
次に、処理スレッド160,161,162は、同時に処理を開始して並列に処理を行う。図12および図13はこの並列処理を行う場合の各送受信メッセージの構成について示す。
まず、処理スレッド160は処理Aを開始するにあたって、処理Aの状態を知らせる処理Aイベントがシグナル状態になるまで待機するための図12に示すメッセージ302を、同期制御プロセス100に送る(ステップST101)。同様に、処理スレッド161も処理Cを開始するにあたって、処理Cの状態を知らせる処理Cイベントがシグナル状態になるまで待機するためのメッセージ303を、同期制御プロセス100に送る(ステップST121)。また同様に、処理スレッド162も処理Bを開始するにあたって、処理Bの状態を知らせる処理Bイベントがシグナル状態になるまで待機するためのメッセージ304を、同期制御プロセス100に送る(ステップST141)。
【0025】
同期制御プロセス100では、送受信スレッド102の受信部122がこれらの3つのメッセージ302,303,304を受信して受信メッセージキュー104に順に格納する。
次いで、メッセージ処理スレッド103が前述の図5のフローチャートに従った処理を行う。メッセージ302は非同期型メッセージなのでステップST2、ステップST3と進む。ステップST3において、オブジェクト管理装置107に登録されている処理Aイベント(オブジェクト)がシグナル状態かを調べると、処理可能なシグナル状態なのでステップST4にて本メッセージ302の処理を行う。処理Aイベントがシグナル状態であることを通知するメッセージ302rを作成し、ステップST6にてメッセージ302rを送信メッセージキュー105に格納する。次いで、送受信スレッド102の送信部121が送信メッセージキュー105からメッセージ302rを取り出し、処理スレッド160に送信する。
【0026】
次に、同期制御プロセス100のメッセージ処理スレッド103は、再びステップST1(図5)に戻り、メッセージ303の処理を続ける。メッセージ303は、非同期型メッセージなのでステップST2、ステップST3と進む。ステップST3において、処理Cイベント(オブジェクト)がシグナル状態かを調べると、非シグナル状態なので、メッセージ303を未処理メッセージキュー106に格納してステップST1に戻り、次のメッセージ304の処理を行う。メッセージ304についても、同様に処理イベントB(オブジェクト)が非シグナル状態なので、メッセージ304を未処理メッセージキュー106に格納する。
【0027】
一方、メッセージ302rを受け取った処理スレッド160は、処理Aを開始し(図7、ステップST102)、直後に処理Bを開始してよいことを通知するために、処理Bイベントの状態をシグナル状態に変更するメッセージ305(図13)を同期制御プロセス100に送る(ステップST103)。すると、同期制御プロセス100では、送受信スレッド102の受信部122が本メッセージ305を受け取り、受信メッセージキュー104に格納する。この段階における各メッセージキューの状態は図14に示されるが、303,304,305は上述した各メッセージを表す。
【0028】
再び同期制御プロセス100において、メッセージ処理スレッド103は、ステップST1(図5)にて、受信メッセージキュー104からメッセージ305を取り出す。メッセージ305は同期型メッセージなので、ステップST4に進みメッセージ処理を行う。すなわち、オブジェクト管理装置107に登録してあるイベントオブジェクト401(図11)の処理Bイベント(イベントオブジェクト)の状態を非シグナル状態からシグナル状態に変更する。この段階では、オブジェクト待ちリスト117が空で、処理Bイベントがシグナル状態になるのを待機しているオブジェクトはないので、これ以上の処理は行わず、返信メッセージ305rを作成して送信メッセージキュー105に格納する。送信部121がこのメッセージ305rを送信メッセージキュー105から取り出して処理スレッド160に送信する。
【0029】
次に、再びステップST1(図5)に戻るが、受信メッセージキュー104にはこれ以上メッセージがないので、未処理メッセージキュー106からメッセージ303を取り出し、ステップST4(図5)に進み処理を行う。メッセージ303は処理Cイベントがシグナル状態になるのを待機するメッセージである。この段階ではオブジェクト管理装置107に登録してある処理Cイベント(オブジェクト)は非シグナル状態、すなわち処理Bはまだ開始されていないため、スレッドオブジェクト161sを処理Cイベントのオブジェクト待ちリスト117に追加する。この場合には、メッセージの送信は不要であるのでステップST6をスキップする。
【0030】
次に、再び未処理メッセージキュー106からメッセージ304を取り出し、ステップST4(図5)に進む。メッセージ304は処理Bイベントがシグナル状態になるのを待機するメッセージである。この段階ではオブジェクト管理装置107に登録してある処理BイベントB(オブジェクト)はシグナル状態、すなわち処理Aは開始されているので、ステップST6(図5)に進み、処理Bイベントがシグナル状態であることを通知するメッセージ304rを生成して送信メッセージキュー105に格納する。次いで、送受信スレッド102の送信部121が送信メッセージキュー105からメッセージ304rを取り出して、処理スレッド162に送る。
【0031】
処理スレッド162は、メッセージ304rを受け取ると処理Bを開始する(図7、ステップST142)。その直後に、処理Cを開始してよいことを通知するために、処理Cイベントの状態をシグナル状態に変更するメッセージ306を同期制御プロセス100に送る(ステップST143)。すると、送受信スレッド102の受信部122が本メッセージ306を受け取り、受信メッセージキュー104に格納する。
【0032】
再び同期制御プロセス100において、メッセージ処理スレッド103は、ステップST1(図5)にて、受信メッセージキュー104からメッセージ306を取り出す。メッセージ306は同期型メッセージなのでステップST4(図5)に進み処理を行う。すなわち、オブジェクト管理装置107に登録してある処理Cイベント(オブジェクト)の状態をシグナル状態に変更する。オブジェクト管理装置107では、処理Cイベントのオブジェクト待ちリスト117に、スレッドオブジェクト161sが格納されていることが分り、オブジェクト待ちリスト117からスレッドオブジェクト161sを削除する処理を行う。同時に、スレッドオブジェクト161sの待機を解除するメッセージ303rを作成し、このメッセージ303rとメッセージ306の処理が成功したことを通知するメッセージ306rを送信メッセージキュー105に格納する。次に送受信スレッド102の送信部121は、メッセージ306rを処理スレッド162に、またメッセージ303rを処理スレッド161に送信する。処理スレッド161は、このメッセージ303rを受け取り、処理Cを開始する(ステップST122)。
このように、処理Bを担当する処理スレッド162に関しては、処理Aが開始するまで待機するメッセージを送信し、処理Bが待機している間に処理スレッド160が処理Aを開始し、処理Bについては先読み操作することで、オブジェクト管理装置107に登録されることなく、同期を実現できる。
【0033】
以上のように、この実施の形態1によれば、送受信スレッド102により複数のプロセスまたは複数の処理スレッド間の同期をとるメッセージを送受信し、受信したメッセージを順次格納する受信メッセージキュー104、メッセージキュー手段として、返信メッセージを格納する送信メッセージキュー105および読み飛ばしたメッセージを格納し待機させる未処理メッセージキュー106を有し、オブジェクト管理装置107により複数のプロセスまたは複数の処理スレッドにおける各処理状態を通知するオブジェクトを登録し管理し、メッセージ処理スレッド103により、受信メッセージキュー104に格納された受信メッセージが同期型メッセージの場合、当該メッセージの処理対象となるオブジェクトをオブジェクト管理装置107で参照して登録すると共に、複数のプロセスまたは複数の処理スレッドの該当する処理を実行させる返信メッセージを送信メッセージキュー105に格納し、一方、受信メッセージキュー104に格納されたメッセージが非同期型メッセージの場合、オブジェクト管理装置107の当該メッセージの処理対象となるオブジェクトがシグナル状態の時には当該メッセージを処理し、また非シグナル状態の時には当該非同期型メッセージを未処理メッセージキュー106に格納し、同期型メッセージに該当する複数のプロセスまたは複数の処理スレッドによる処理が終了すると未処理メッセージキュー106に格納した待機中の非同期型メッセージについて処理する。したがって、送受信スレッド102とメッセージ処理スレッド103を別に設け、未処理メッセージキュー106を設けたことにより、メッセージ処理中に送られてきた次のメッセージを先読みして対応でき、先読み操作により、すべての複数のプロセスまたは複数の処理スレッドのオブジェクトを登録し、かつオブジェクト管理装置107からオブジェクトを削除するという複雑な作業を省略でき、オーバーヘッドを削減する効果が得られる。
【0034】
実施の形態2.
図15は、この発明の実施の形態2に係る並列処理を説明する模式図である。
処理スレッド160,161,162は一連の処理A,B,Cを分担して実施する。処理スレッド160は処理Aを担当し、処理スレッド161は処理Cを担当し、処理スレッド162は処理Bを担当する。ここで、処理Bと処理Cは処理Aが終了した後に処理を開始するものと定義して、処理スレッド160,161,162の実行順序を決めるものとする。
【0035】
次に動作について説明する。
まず、準備処理として、処理スレッド160は処理Aの状態を知らせるイベントオブジェクトを生成するため、同期制御プロセス100にイベントを作成するメッセージを送る(ステップST110)。この処理Aの場合におけるメッセージは、図16に示される内容を持つメッセージ310である。このイベントは処理Aが終了したらシグナル状態にセットされることを意味し、初期状態では非シグナル状態に設定される。メッセージ310は同期型メッセージである。
【0036】
同期制御プロセス100において、送受信スレッド102の受信部122がメッセージ310を受信して受信メッセージキュー104に格納する。次いで、メッセージ処理スレッド103が、前述の図5に示すフローチャートに従った処理を行う。
今の場合は、メッセージ310は同期型メッセージであるからステップST4(図5)にてメッセージ処理を行う。またこの場合、メッセージタイプがイベント生成なので、処理Aイベント(オブジェクト)を生成して、オブジェクト管理装置107に登録する。登録直後は、本イベントのオブジェクト待ちリスト117は空である。さらに、処理Aイベントの生成が成功したことを通知するメッセージ310r(図示せず)を作成する(ステップST110)。次に、メッセージの送信が必要なので、ステップST6(図5)にてメッセージ310rを送信メッセージキュー105に格納する。次いで、送受信スレッド102の送信部121が送信メッセージキュー105からメッセージ310rを取り出し、処理スレッド160に送信する。
【0037】
次に、処理スレッド160,161,162は同時に処理を開始して、並列処理を行う。処理スレッド160は無条件に処理Aを開始(ステップST111)する。処理スレッド161は処理Cを開始するにあたって、処理Aが終了したことを知らせる処理Aイベント(オブジェクト)がシグナル状態になるまで待機するためのメッセージ311(図示せず)を、同期制御プロセス100に送る(ステップST130)。同様に、処理スレッド162は処理Bを開始するにあたって、処理Aが終了したことを知らせる処理Aイベント(オブジェクト)がシグナル状態になるまで待機するためのメッセージ312(図示せず)を、同期制御プロセス100に送る(ステップST150)。
【0038】
同期制御プロセス100では、送受信スレッド102の受信部122がこれらの2つのメッセージ311,312を受信して受信メッセージキュー104に順次に格納する。次いで、メッセージ処理スレッド103が図5に示すフローチャートに従った処理を行う。
メッセージ311は非同期型メッセージなので、ステップST2、ステップST3と進む。ステップST3において、オブジェクト管理装置107に登録されている処理Aイベント(オブジェクト)がシグナル状態か調べると、非シグナル状態なので、本メッセージ311を未処理メッセージキュー106に格納してステップST1(図5)に戻り、メッセージ312の処理を続ける。メッセージ312においても、同様に処理イベントA(オブジェクト)が非シグナル状態なので、本メッセージ312を未処理メッセージキュー106に格納する。
【0039】
一方、処理スレッド160は処理Aを行い、処理を終了する(ステップST112)。処理Aが終了したことを通知するために、処理Aイベント(オブジェクト)の状態をシグナル状態に変更するメッセージ313(図示せず)を同期制御プロセス100に送る(ステップST113)。すると、同期制御プロセス100において、送受信スレッド102の受信部122が本メッセージ313を受け取り、受信メッセージキュー104に格納する。この段階における各メッセージキュー104,105,106の状態は図17に示されが、311,312,313は上述の各メッセージを表す。
【0040】
同期制御プロセス100において、再びメッセージ処理スレッド103は、ステップST1(図5)に戻り、受信メッセージキュー104からメッセージ313を取り出す。メッセージ313は同期型メッセージなのでステップST4に進み、オブジェクト管理装置107に登録してある処理Aイベントの状態をシグナル状態に変更する。この段階では、オブジェクト待ちリスト117が空で、処理Aイベント(オブジェクト)がシグナル状態になるのを待機しているオブジェクトはないので、これ以上の処理は行わず、返信メッセージ313r(図示せず)を作成して送信メッセージキュー105に格納する。送信部121がこのメッセージ313rを処理スレッド160に送信する。
【0041】
次に、再びメッセージ処理スレッド103は、ステップST1(図5)に戻るが、受信メッセージキュー104にはこれ以上メッセージがないので、未処理メッセージキュー106からメッセージ311を取り出し、ステップST4に進み処理を行う。メッセージ311は処理Aイベントがシグナル状態になるのを待機するメッセージである。この段階では、オブジェクト管理装置107に登録してある処理Aイベント(オブジェクト)はシグナル状態、すなわち処理Aは終了しているため、ステップST6(図5)に進み、処理Aイベントがシグナル状態であることを通知するメッセージ311r(図示せず)を生成して送信メッセージキュー102に格納する。
【0042】
次に、メッセージ処理スレッド103は、再び未処理メッセージキュー106からメッセージ312を取り出し、ステップST4(図5)に進む。メッセージ312も同様に処理Aイベントがシグナル状態になるのを待機するメッセージである。この段階では、オブジェクト管理装置107に登録してある処理Aイベント(オブジェクト)はシグナル状態、すなわち処理Aは終了しているため、ステップST6に進み、処理Aイベントがシグナル状態であることを通知するメッセージ312r(図示せず)を生成して送信メッセージキュー105に格納する。
【0043】
送受信スレッド102の送信部121が、送信メッセージキュー105から上記メッセージ311r,312rを取り出して、それぞれ処理スレッド161とスレッド162に送る。処理スレッド161はメッセージ311rを受け取り、処理Cを開始する。同様に、処理スレッド162はメッセージ312rを受け取り、処理Bを開始する。
【0044】
以上のように、実施の形態2によれば、処理Bを担当する処理スレッド162と処理Cを担当する処理スレッド161は、処理Aが終了するまで待機するメッセージ311,312を送信し、待機している間に、処理スレッド160が処理Aを終了して、メッセージ313を送信するようにしたものである。また、処理スレッド162と処理スレッド161がメッセージを送信した段階では、まだ処理Aが終了していないが、メッセージ処理スレッド103と送受信スレッド102を別スレッドとしたことで、メッセージ処理スレッド103がメッセージ311,312を未処理メッセージキュー106に格納している間にメッセージ313が受信メッセージキュー104に格納され、このメッセージ313がメッセージ311,312よりも優先して、すなわち先読み処理されることで、メッセージ311,312の処理対象となるオブジェクトがオブジェクト管理装置107に登録されることなく処理を終了することができ、その分で効率化が図れる効果が得られる。また処理Aの終了を示すメッセージ313が処理スレッド161と処理スレッド162に送信されることで、1対2のメッセージ通信においても先読みでき、さらには、送信側と受信側でN対Nの通信に適用できるため、複数のプロセスまたは複数の処理スレッド間での実行順序を決めることができる効果が得られる。
【0045】
実施の形態3.
上記実施の形態1および実施の形態2では、メッセージが非同期型メッセージなら全て読み飛ばしの対象にしたが、非同期型メッセージの中でも、頻繁に状態が変更されるものだけを読み飛ばしの対象にしてさらに効率化を図ることもできる。例えば、イベント、セマフォ、ミューテックスの中で、イベントが頻繁に状態が変更される場合に利用するとした場合には、イベント待ちのメッセージのみを読み飛ばしの対象にし、それ以外は読み飛ばしの対象にしないことでさらに効率化できる。
【0046】
図18は実施の形態3に係るメッセージ処理スレッド103の処理手順を示すフローチャートである。図において、ステップST209が図5と異なる部分で、その他は同様な処理であり、その部分の説明を省略する。
メッセージ処理スレッド103の判定部132は、受信メッセージキュー104に受信メッセージがあった場合(ステップST201)に、それが同期型メッセージかを調べる(ステップST202)。非同期型メッセージであった場合には、さらに読み飛ばし対象のメッセージかどうかを調べる(ステップST209)。このことで、特定のメッセージのみを先読みの対象にすることができる。
【0047】
以上のように、実施の形態3によれば、先読みしてから、最終的にオブジェクト管理装置107に登録されると、先読み操作の分だけ非効率的になるが、状態変化が頻繁起こるオブジェクトのみを読み飛ばすようにしてオブジェクトのタイプ毎に先読みするかどうかを決めるようにしたので、より効率的に処理を行える効果が得られる。
【0048】
【発明の効果】
以上のように、この発明によれば、一連の処理を分担して並列処理する複数のプロセスまたは複数の処理スレッド間の同期制御を行うマルチスレッド同期制御方式において、複数のプロセスまたは複数の処理スレッド間の同期をとるメッセージを複数のプロセスまたは複数の処理スレッドと送受信する送受信スレッドと、送受信スレッドが受信したメッセージを順次格納する受信メッセージキュー、複数のプロセスまたは複数の処理スレッドに送信する返信メッセージを格納する送信メッセージキューおよび受信時に読み飛ばしたメッセージを格納し待機させる未処理メッセージキューを有するメッセージキュー手段と、複数のプロセスまたは複数の処理スレッドにおける各処理状態を通知するオブジェクトを登録し管理するためのオブジェクト管理手段と、受信メッセージキューに格納された受信メッセージが同期型メッセージの場合、当該同期型メッセージを優先し当該メッセージの処理対象となるオブジェクトをオブジェクト管理手段で参照して登録すると共に、複数のプロセスまたは複数の処理スレッドの該当する処理を実行させる返信メッセージを送信メッセージキューに格納し、一方、受信メッセージキューに格納されたメッセージが非同期型メッセージの場合、オブジェクト管理手段の当該メッセージの処理対象となるオブジェクトがシグナル状態の時には当該メッセージを処理し、また非シグナル状態の時には当該非同期型メッセージを未処理メッセージキューに格納し、受信メッセージキューに同期型メッセージがない場合には未処理メッセージキューに格納した待機中の非同期型メッセージについて処理するメッセージ処理スレッドとを備えるように構成したので、送受信スレッドとメッセージ処理スレッドを別スレッドとして、メッセージ処理スレッドは送受信スレッドが受信したメッセージを先読みすると同時に、送受信スレッドも並行して送受信を行うことで先読みをより効果的に行い、先読みをすることでメッセージの処理時間そのものを短縮し、また送信側と受信側でN対Nの同期を可能にする効果がある。さらに、オブジェクト管理手段を備えてオブジェクトを管理しているので、3つ以上の処理プロセスまたは処理スレッド間での同期制御が可能になる効果がある。
【0049】
この発明によれば、メッセージ処理スレッドは、受信メッセージキューに格納された受信メッセージが非同期型メッセージの場合、当該非同期型メッセージのうちから特定のメッセージのみを判定した後、当該メッセージの処理対象となるオブジェクトをオブジェクト管理手段でシグナル状態か調べて未処理メッセージキューに格納する対象とするように構成したので、状態変化が頻繁起こるような特定のオブジェクトのみを読み飛ばすようにしてオブジェクトのタイプに応じて先読みするかどうかを決めることで、より効率的に処理を行える効果がある。
【図面の簡単な説明】
【図1】この発明の実施の形態1乃至実施の形態3によるマルチスレッド同期装置の構成を示すブロック図である。
【図2】同実施の形態1に係るオブジェクトの構成を示す説明図である。
【図3】同実施の形態1に係るスレッドオブジェクトの構成を示す説明図である。
【図4】同実施の形態1に係る送受信メッセージの構成を示す説明図である。
【図5】同実施の形態1および実施の形態2に係るメッセージ処理スレッドの動作手順を示すフローチャートである。
【図6】同実施の形態1に係る並列処理を行う処理プロセスの動作手順を示すフローチャートである。
【図7】同実施の形態1に係る並列処理を説明する模式図である。
【図8】同実施の形態1に係る送受信メッセージの構成を示す説明図である。
【図9】同実施の形態1に係るイベントオブジェクトの構成を示す説明図である。
【図10】同実施の形態1に係る送受信メッセージの構成を示す説明図である。
【図11】同実施の形態1に係るイベントオブジェクトの構成を示す説明図である。
【図12】同実施の形態1に係る並列処理時の各送受信メッセージの構成を示す説明図である。
【図13】同実施の形態1に係る並列処理時の各送受信メッセージの構成を示す説明図である。
【図14】同実施の形態1に係るメッセージキューの状態例を示す説明図である。
【図15】同実施の形態2に係る並列処理を説明する模式図である。
【図16】同実施の形態2に係る送信メッセージの構成例を示す説明図である。
【図17】同実施の形態2に係るメッセージキューの状態例を示す説明図である。
【図18】同実施の形態3に係るメッセージ処理スレッドの処理手順を示すフローチャートである。
【図19】従来の同期化方式の構成を示すブロック図である。
【符号の説明】
1 記憶部、2 待ち部、3 実行部、4 受信部、5 送信部、6 解除部、7 全受信部、8 全実行部、9 全送信部、10 判定部、100 同期制御プロセス、102 送受信スレッド、103 メッセージ処理スレッド、104 受信メッセージキュー、105 送信メッセージキュー、106 未処理メッセージキュー、107 オブジェクト管理装置(オブジェクト管理手段)、110,111,112 オブジェクト、117 オブジェクト待ちリスト、121 送信部、122 受信部、131 処理部、132 判定部、140,140r メッセージ、150,151 処理プロセス、160,161,162 処理スレッド、160s,161s スレッドオブジェクト、170 送信部、171 待ち部、172 処理部、173 受信部、200 オブジェクト名、201 オブジェクト識別子、202 オブジェクトタイプ、203 オブジェクトの状態、204 オブジェクト固有の情報、210 プロセス識別番号、211 スレッド識別番号、212 送受信用のディスクリプタ、220 プロセス識別番号、221 フレッド識別番号、222 メッセージタイプ、223 メッセージ固有の情報、300〜306,310,300r〜306r メッセージ、400,401 イベントオブジェクト。

Claims (2)

  1. 一連の処理を分担して並列処理する複数のプロセスまたは複数の処理スレッド間の同期制御を行うマルチスレッド同期制御方式において、
    前記複数のプロセスまたは複数の処理スレッド間の同期をとるメッセージを前記複数のプロセスまたは複数の処理スレッドと送受信する送受信スレッドと、
    前記送受信スレッドが受信した前記メッセージを順次格納する受信メッセージキュー、前記複数のプロセスまたは複数の処理スレッドに送信する返信メッセージを格納する送信メッセージキューおよび受信時に読み飛ばしたメッセージを格納し待機させる未処理メッセージキューを有するメッセージキュー手段と、
    前記複数のプロセスまたは複数の処理スレッドにおける各処理状態を通知するオブジェクトを登録し管理するためのオブジェクト管理手段と、
    前記受信メッセージキューに格納された受信メッセージが同期型メッセージの場合、当該同期型メッセージを優先し当該メッセージの処理対象となるオブジェクトを前記オブジェクト管理手段で参照して登録すると共に、前記複数のプロセスまたは複数の処理スレッドの該当する処理を実行させる返信メッセージを前記送信メッセージキューに格納し、
    一方、前記受信メッセージキューに格納されたメッセージが非同期型メッセージの場合、前記オブジェクト管理手段の当該メッセージの処理対象となるオブジェクトがシグナル状態の時には当該メッセージを処理し、また非シグナル状態の時には当該非同期型メッセージを前記未処理メッセージキューに格納し、
    前記受信メッセージキューに同期型メッセージがない場合には前記未処理メッセージキューに格納した待機中の非同期型メッセージについて処理するメッセージ処理スレッドと
    を備えたことを特徴とするマルチスレッド同期制御方式。
  2. メッセージ処理スレッドは、受信メッセージキューに格納された受信メッセージが非同期型メッセージの場合、当該非同期型メッセージのうちから特定のメッセージのみを判定した後、当該メッセージの処理対象となるオブジェクトをオブジェクト管理手段でシグナル状態か調べて未処理メッセージキューに格納する対象とするようにしたことを特徴とする請求項1記載のマルチスレッド同期制御方式。
JP2002186654A 2002-06-26 2002-06-26 マルチスレッド同期制御方式 Pending JP2004030312A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002186654A JP2004030312A (ja) 2002-06-26 2002-06-26 マルチスレッド同期制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002186654A JP2004030312A (ja) 2002-06-26 2002-06-26 マルチスレッド同期制御方式

Publications (1)

Publication Number Publication Date
JP2004030312A true JP2004030312A (ja) 2004-01-29

Family

ID=31181945

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002186654A Pending JP2004030312A (ja) 2002-06-26 2002-06-26 マルチスレッド同期制御方式

Country Status (1)

Country Link
JP (1) JP2004030312A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100450105C (zh) * 2005-09-13 2009-01-07 中兴通讯股份有限公司 一种基于java消息服务的同步消息接口实现方法
CN102867018A (zh) * 2012-07-27 2013-01-09 上海方正数字出版技术有限公司 一种数据库系统中线程间的模拟信号通信方法
US8397094B2 (en) 2008-10-31 2013-03-12 Fujitsu Limited Node-to-node synchronizing apparatus, node-to-node synchronizing method, and computer product
CN103096168A (zh) * 2012-12-25 2013-05-08 四川九洲电器集团有限责任公司 一种基于iptv机顶盒的数据通信并行处理方法
CN107945430A (zh) * 2017-11-24 2018-04-20 上海动联信息技术股份有限公司 一种用于智能pos机的基于串口的双向并发通讯方法
KR102127591B1 (ko) * 2019-01-14 2020-06-26 건국대학교 산학협력단 이벤트 기반 비동기식 통신 프레임워크에서의 동기식 통신 방법 및 장치
CN111737030A (zh) * 2020-06-24 2020-10-02 广东浪潮大数据研究有限公司 一种控制指令处理方法、装置、设备及计算机存储介质
CN112104442A (zh) * 2020-08-31 2020-12-18 宁波三星医疗电气股份有限公司 一种电力采集终端的报文回复方法
KR20210154525A (ko) * 2020-06-12 2021-12-21 건국대학교 산학협력단 이벤트 기반 비동기식 통신 미들웨어에서의 직접 및 간접 동기식 통신 방법 및 장치

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100450105C (zh) * 2005-09-13 2009-01-07 中兴通讯股份有限公司 一种基于java消息服务的同步消息接口实现方法
US8397094B2 (en) 2008-10-31 2013-03-12 Fujitsu Limited Node-to-node synchronizing apparatus, node-to-node synchronizing method, and computer product
CN102867018A (zh) * 2012-07-27 2013-01-09 上海方正数字出版技术有限公司 一种数据库系统中线程间的模拟信号通信方法
CN102867018B (zh) * 2012-07-27 2015-04-22 北大方正集团有限公司 一种数据库系统中线程间的模拟信号通信方法
CN103096168A (zh) * 2012-12-25 2013-05-08 四川九洲电器集团有限责任公司 一种基于iptv机顶盒的数据通信并行处理方法
CN107945430A (zh) * 2017-11-24 2018-04-20 上海动联信息技术股份有限公司 一种用于智能pos机的基于串口的双向并发通讯方法
KR102127591B1 (ko) * 2019-01-14 2020-06-26 건국대학교 산학협력단 이벤트 기반 비동기식 통신 프레임워크에서의 동기식 통신 방법 및 장치
KR20210154525A (ko) * 2020-06-12 2021-12-21 건국대학교 산학협력단 이벤트 기반 비동기식 통신 미들웨어에서의 직접 및 간접 동기식 통신 방법 및 장치
KR102388083B1 (ko) 2020-06-12 2022-04-18 건국대학교 산학협력단 이벤트 기반 비동기식 통신 미들웨어에서의 직접 및 간접 동기식 통신 방법 및 장치
CN111737030A (zh) * 2020-06-24 2020-10-02 广东浪潮大数据研究有限公司 一种控制指令处理方法、装置、设备及计算机存储介质
CN112104442A (zh) * 2020-08-31 2020-12-18 宁波三星医疗电气股份有限公司 一种电力采集终端的报文回复方法
CN112104442B (zh) * 2020-08-31 2023-12-05 宁波三星医疗电气股份有限公司 一种电力采集终端的报文回复方法

Similar Documents

Publication Publication Date Title
JP3549081B2 (ja) 優先度付きタスク実行制御方法及びデータ処理装置
FI116166B (fi) Menetelmä ja järjestelmä sovellusistuntojen suorittamiseksi elektroniikkalaitteessa, ja elektroniikkalaite
JP2004030312A (ja) マルチスレッド同期制御方式
CA2547440A1 (en) Synchronized data transfer system
JP2008033952A (ja) 共通作業キュー環境における最適格サーバ
US6622159B1 (en) Method, apparatus and computer program product for automatically restarting an RPC server without losing client RPC calls
CN111404931B (zh) 一种基于持久性内存的远程数据传输方法
JPH06243070A (ja) プロセッサ間通信システム
CN112822300B (zh) 基于rdma的数据传输方法、装置及电子设备
US10656967B1 (en) Actor and thread message dispatching
CN117331655A (zh) 多线程调度方法及装置
US20100145480A1 (en) Information recording/reproducing apparatus and information recording/reproducing method
JP4151330B2 (ja) ネットワークファイルシステム用i/o制御方法
US5754856A (en) MVS/ESA message transport system using the XCF coupling facility
KR20010061949A (ko) Scsi 버스상의 재선택을 관리하기 위한 방법 및 시스템
JP2003330739A (ja) 通信応答同期システム及び方法並びに通信応答同期プログラム
CN111258937A (zh) 一种环式链表dma的传输方法及系统
JP2001344119A (ja) トランザクション実行制御方式およびトランザクション実行制御方法
JP2538765B2 (ja) ジョブ間情報通信方式およびジョブ間情報通信方法
JP2611739B2 (ja) タスク間通信システム
CN106534073B (zh) 流媒体信息的获取方法及装置
JPH0962517A (ja) タスク制御装置
JP2002251290A (ja) 業務入替方法、業務入替プログラム、業務入替システムおよび記録媒体
JPH03208131A (ja) オペレーティングシステムのタスク制御方式
CN116756214A (zh) 数据处理方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050518

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071009

A521 Written amendment

Effective date: 20071119

Free format text: JAPANESE INTERMEDIATE CODE: A821

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20071119

RD04 Notification of resignation of power of attorney

Effective date: 20071119

Free format text: JAPANESE INTERMEDIATE CODE: A7424

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071205

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080812

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080902