"第1データ処理装置は、第1処理の処理要求に応答して前記第1処理の処理情報を取得し、前記第1処理の処理情報に含まれる第1処理フラグにトルーを設定し、前記第1処理を実行した後に前記第1処理の処理情報の第1終了フラグにトルーを設定し、前記第1処理に続いて実行される第3処理の前に実行される第2処理の処理情報を取得し、前記第2処理の処理情報に含まれる第2処理フラグおよび第2終了フラグに基づいて実行する処理を決定することを特徴とするデータ処理方法。前記第2処理フラグがフォールスを示すときに前記第2処理を実行することを特徴とする請求項1に記載のデータ処理方法。前記第2処理フラグがトルーを示すとともに前記第2処理の処理情報に含まれる第2終了フラグがトルーを示すとき、前記第3処理を実行することを特徴とする請求項1または請求項2に記載のデータ処理方法。前記第2処理フラグがトルーを示すとともに前記第2処理の処理情報に含まれる第2終了フラグがフォールスを示すとき、前記第3処理の実行を開始しないことを特徴とする請求項1または請求項2に記載のデータ処理方法。前記第2処理の実行結果を受信し、前記第2処理の処理情報を取得し、前記第2処理の処理情報に含まれる処理装置情報が前記第1データ処理装置を示すとともに第2終了フラグがトルーを示すとき、前記処理装置情報を更新することを特徴とする請求項1乃至請求項4の何れか一に記載のデータ処理方法。前記第2処理の実行結果を受信し、前記第2処理の処理情報を取得し、前記第2処理の処理情報に含まれる処理装置情報が前記第1データ処理装置を示すとともに第2終了フラグがフォールスを示し第2処理フラグがトルーを示すとき、前記第2処理の実行を停止することを特徴とする請求項1乃至請求項4の何れか一に記載のデータ処理方法。前記第2処理の実行結果を受信し、前記第2処理の処理情報を取得し、前記第2処理の処理情報に含まれる処理装置情報が前記第1データ処理装置を示すとともに第2終了フラグがフォールスを示し第2処理フラグがフォールスを示すとき、前記第3処理を実行することを特徴とする請求項1乃至請求項4の何れか一に記載のデータ処理方法。前記第2処理の実行結果を受信し、前記第2処理の処理情報を取得し、前記第2処理の処理情報に含まれる処理装置情報が前記第1データ処理装置を示すとともに第2終了フラグがフォールスを示すとき、前記第1データ処理装置は、優先度の高い処理を実行する第2データ処理装置で実行される第4処理を実行することを特徴とする請求項1乃至請求項4の何れか一に記載のデータ処理方法。第1処理の処理要求に応答して前記第1処理の処理情報を取得する受信ユニットと、前記第1処理の処理情報に含まれる第1処理フラグにトルーを設定するとともに前記第1処理を実行した後に前記第1処理の処理情報の第1終了フラグにトルーを設定し、前記第1処理に続いて実行される第3処理の前に実行される第2処理の処理情報を取得し、前記第2処理の処理情報に含まれる第2処理フラグに基づいて前記第3処理を実行する処理ユニットとを含むことを特徴とするデータ処理システム。複数のデータ処理装置に処理の実行を要求する処理要求を送信する処理要求送信ユニットと、前記複数のデータ処理装置のうちの少なくとも一のデータ処理装置から前記処理の実行結果を取得する処理結果受信ユニットと、前記処理の実行が行われていることを示す処理フラグ、前記処理の実行の終了を示す終了フラグ、及び前記処理を実行するデータ処理装置を示す情報を前記処理に関連づけて記憶する記憶ユニットとを含むことを特徴とするデータ処理システム。前記処理結果受信ユニットは、前記処理結果を受信するとき、前記処理に対応する終了フラグがフォールスを示すときに前記処理フラグをトルーに変更することを特徴とする請求項10に記載のデータ処理システム。前記記憶ユニットは、前記処理の実行の優先度を示す優先フラグを記憶することを特徴とする請求項10または請求項11に記載のデータ処理システム。しかしながら、無線により通信可能な複数の端末を利用して並列処理を行うシステムの場合、端末自身が移動すると、電波を遮る遮蔽物の状況が時々刻々と変化するため、通信品質が低下してしまうことがある。例えば、並列処理の開始時点では、通信品質が良好であっても、並列処理の途中で通信品質が低下し、通信に非常に時間がかかるようになったり、通信ができなくなったりすることがある。このような状況になると、並列処理が終わるまでに多大な時間がかかったり、並列処理を終わらせることができなくなってしまうという問題点がある。データ処理方法及びデータ処理システムは、複数の端末を利用して迅速に並列処理を実行することができるデータ処理方法及びデータ処理システムを提供することを目的とする。上述した課題を解決し、目的を達成するため、データ処理方法において、第1データ処理装置は、第1処理の処理要求に応答して第1処理の処理情報を取得し、第1処理の処理情報に含まれる第1処理フラグにトルーを設定する。第1データ処理装置は、第1処理を実行した後に第1処理の処理情報の第1終了フラグにトルーを設定する。第1データ処理装置は、第1処理に続いて実行される第3処理の実行を開始する前に実行が終了している必要のある第2処理の処理情報を取得し、第2処理の処理情報に含まれる第2処理フラグおよび第2終了フラグに基づいて実行する処理を決定する。開示のデータ処理方法及びデータ処理システムによれば、複数の端末を利用して迅速に並列処理を実行することができるという効果を奏する。以下に、この発明にかかるデータ処理方法及びデータ処理システムの実施例を図面に基づいて詳細に説明する。データ処理方法及びデータ処理システムは、データ処理装置が、第1処理に続いて実行される第3処理の前に実行される第2処理の処理情報を取得し、第2処理の処理情報に含まれる第2処理フラグに基づいて第3処理を実行するものである。なお、この実施例によりこの発明が限定されるものではない。実施例1図1は、実施例1にかかるデータ処理方法を示すフローチャートである。図1に示すように、データ処理が開始されると、まず、データ処理装置第1データ処理装置は、第1処理の処理要求に応答して第1処理の処理情報を取得するステップS1。次いで、データ処理装置は、第1処理フラグにトルーを設定するステップS2。第1処理フラグは、第1処理の処理情報に含まれている。次いで、データ処理装置は、第1処理を実行する。第1処理の実行後、データ処理装置は、第1終了フラグにトルーを設定するステップS3。第1終了フラグは、第1処理の処理情報に含まれている。次いで、データ処理装置は、第2処理の処理情報を取得するステップS4。データ処理装置では、本来、第1処理に続いて第3処理が実行されるようになっている。データ処理装置が第2処理を実行する場合、第2処理は、第3処理の前に実行される。次いで、データ処理装置は、第2処理フラグに基づいて第3処理を実行するステップS5。第2処理フラグは、第2処理の処理情報に含まれている。そして、データ処理装置は、一連のデータ処理を終了する。実施例1によれば、処理速度の速いデータ処理装置が、第1処理の実行が終了した後、第3処理の実行を開始するまでの待機時間に、処理速度の遅いデータ処理装置で実行される第2処理を投機的に実行することができる。従って、複数のデータ処理装置を利用して迅速に並列処理を実行することができる。また、無線により通信可能な端末をデータ処理装置として用いて並列処理を行う場合、通信品質が低下した端末に割り当てられている第2処理を、通信品質の良好な端末が第3処理の実行開始を待つ間に投機的に実行することができる。従って、複数の端末を利用して迅速に並列処理を実行することができる。実施例2実施例2は、実施例1にかかるデータ処理方法を、第1データ処理装置として携帯電話機などの端末を用いた携帯電話システムにおいて、バリア同期を用いたループ並列処理に適用したものである。なお、端末の一例として、携帯電話機以外にも、無線による通信が可能な携帯型のゲーム機やPDAPersonalDigitalAssistantsなどの携帯情報端末が挙げられる。バリア同期を用いたループ並列処理の説明図2は、バリア同期を用いたループ並列処理を説明する模式図である。図2には、前段のループ処理及び後段のループ処理を、それぞれイタレーション間に依存関係のない例えば10個の部分ループ処理に分割して、例えば10台の端末で並列に処理する例が示されている。図2において、処理m-nは、n番目の端末が処理するm段目の部分ループ処理を表す。従って、処理1-1、処理1-2、、及び処理1-10は、別々の端末で処理される。処理1-1、処理2-1及び処理3-1は、同じ端末で処理される。なお、前段のループ処理の分割数及び後段のループ処理の分割数は、それぞれ10個に限らず、任意である。図2に示す例では、後段のループ処理は、前段のループ処理で出力される配列Aのすべてのデータを利用することになっている。従って、各前段の部分ループ処理1-1~1-101,2,3のプログラムコードの最後には、バリア処理を行う関数barrierが挿入されている。それによって、すべての前段の部分ループ処理1-1~1-101,2,3が終了してから、各後段の部分ループ処理2-1~2-104,5,6が開始される。最終段の各処理3-1~3-107,8,9は、各端末での処理のアンカーを示す。各後段の部分ループ処理4,5,62-1~2-10のプログラムコードの最後には、バリア処理を行う関数barrierが挿入されている。従って、最終段の各処理3-1~3-107,8,9は、すべての後段の部分ループ処理2-1~2-104,5,6が終了してから、開始される。データ処理方法の説明図3は、実施例2にかかるデータ処理方法を説明する模式図である。図3に示すように、複数、例えば10台の端末で並列処理を行う際、端末1は、自身に割り当てられた前段の部分ループ処理1-1を実行する。端末1は、前段の部分ループ処理1-1の実行が終了した後に、他の端末2、端末3、にそれぞれ割り当てられた前段の部分ループ処理1-2、部分ループ処理1-3、を独立したスレッドとしてタイムスライス実行により投機的に実行する。端末1は、他の端末2、端末3、から処理結果を受け取ると、受け取った処理結果に対応するスレッドの実行をキャンセルする。端末1は、最終的に他の端末2、端末3、から処理結果を受け取るか、自身で投機的に実行したスレッドで前段の部分ループ処理1-2、部分ループ処理1-3、が終了することによって、すべての前段の部分ループ処理の結果が揃うと、自身に割り当てられた後段の部分ループ処理2-1の実行を開始する。基地局の説明図4は、実施例2にかかる基地局を示すブロック図である。図4に示すように、基地局11は、例えばCPUCentralProcessingUnit、中央処理装置12、記録装置13、記憶ユニットの一例として例えばメモリ14、及び通信部15を備えている。CPU12、記録装置13、メモリ14及び通信部15は、バス16に接続されている。CPU12は、OSOperatingSystem、オペレーティングシステムやライブラリ17を実行する。CPU12がOSやライブラリ17を実行することによって、処理要求送信ユニットの一例として例えば処理要求配布部18が実現され、また処理結果受信ユニットの一例として例えば処理結果受信部19が実現される。また、CPU12は、種々のアプリケーションプログラムを実行する。処理要求配布部18は、並列処理全体を制御する。処理要求配布部18は、複数の端末へ処理の実行を要求する処理要求を配布する処理を行う。処理要求配布部18の動作については、基地局における並列処理開始時の動作として後述する。処理結果受信部19は、各端末から処理の実行結果を受信したときの処理を行う。処理結果受信部19の動作については、基地局における処理結果受信時の動作として後述する。記録装置13は、予めプログラムの作成者によって作成された並列処理情報20を記録している。並列処理情報20については、後述する。記録装置13の一例として、例えばROMReadOnlyMemory、リードオンリーメモリ、HDHardDisk、ハードディスクまたは磁気テープなどの不揮発性の記憶装置が挙げられる。メモリ14は、例えばCPU12の作業領域として用いられる。メモリ14には、並列処理要求21及び回収データ格納領域22が展開される。並列処理要求21は、後述する並列処理情報20に含まれている並列処理要求を展開したものである。メモリ14には、並列処理要求21のデータの一部として、処理の実行が行われていることを示す処理フラグ、処理の実行の終了を示す終了フラグ、及び処理を実行する端末を示す情報が、処理に関連づけられて記憶される。また、図2に示す例では、回収データ格納領域22として配列Bの格納領域が展開される。メモリ14の一例として、例えばRAMRandomAccessMemory、ランダムアクセスメモリが挙げられる。通信部15は、携帯電話網に無線通信により接続して端末との間で例えばパケットの送受信を行う。並列処理情報の一例図5は、実施例2にかかる並列処理情報の一例を示す模式図である。図5に示すように、並列処理情報20には、並列処理要求31及び基地局側利用情報32が含まれている。並列処理要求31には、処理情報33及び利用データ情報34が含まれている。処理情報33は、複数段及び複数の端末分に分割された部分ループ処理ごとに設定されている。利用データ情報34には、複数の端末で並列処理を行う際に必要となるデータサイズなどのデータ領域に関する情報が含まれている。基地局側利用情報32には、基地局が利用する情報が含まれている。基地局側利用情報32には、例えば並列処理を行う端末の数必要端末数、並列処理を開始する対象である処理開始対象処理、並列処理において後続となる対象である処理待ち対象処理、及び並列処理の結果として回収するデータ回収データの情報が含まれている。例えば図2に示す例に対応する並列処理情報20の一例について説明する。処理情報33は、例えば処理1-1~1-10の各前段の部分ループ処理1,2,3、処理2-1~2-10の各後段の部分ループ処理4,5,6及び処理3-1~3-10の最終段の各処理7,8,9のそれぞれについて設定されている。利用データ情報34には、例えば配列名としてA、Aの配列のデータサイズとして100000、配列名としてB、及びBの配列のデータサイズとして100000という情報が含まれている。データに初期値が設定されている場合、並列処理要求31にデータの初期値が含まれていてもよい。基地局側利用情報32には、例えば必要端末数が10台であり、開始対象処理が処理1-1~1-10であり、待ち対象処理が処理2-1~2-10であり、回収データがデータサイズ100000の配列Bであるという情報が含まれている。処理情報の説明図6は、実施例2にかかる処理情報の一例を示す模式図である。図6に示すように、各部分ループ処理に関する処理情報33には、対応する部分ループ処理に対応するプログラムコード41、及び並列処理の際に利用される付随情報42が含まれている。プログラムコード41は、予めプログラムの作成者によって設定されている。付随情報42には、処理名、終了フラグ、処理フラグ、処理端末、後続処理、先行処理、データ出力領域及び処理スレッドの各フィールドが設定されている。これらのフィールドのうち、処理名、後続処理、先行処理及びデータ出力領域の各フィールドには、予めプログラムの作成者によってデータが設定されている。終了フラグ及び処理フラグの各フィールドには、予め初期値が設定されている。各フラグの初期値は、例えばフォールスであってもよい。端末は、処理情報33に記述されたすべての先行処理の実行が終了すると、処理情報33に記述されたプログラムコード41の実行を開始することができる。端末は、処理情報33に記述されたプログラムコード41の実行を終えると、処理情報33に記述された後続処理の実行を開始するか、または実行の開始を待機する状態になることができる。データ出力領域のフィールドには、対応する部分ループ処理から処理結果として出力されるデータの範囲が設定される。例えば図2に示す例に対応する処理情報33の一例について説明する。処理名のフィールドには、処理1-1や処理1-2などが設定される。処理1-1~1-10について、何れも先行処理がないので、先行処理のフィールドにはヌルが設定される。処理1-1について、後続処理は処理2-1であるので、後続処理のフィールドには処理2-1が設定される。処理1-1について、データ出力領域のフィールドには、配列Aの0から9999までの要素の範囲が設定される。処理1-2~処理1-10についても同様である。処理2-1について、先行処理は処理1-1~1-10のすべてであるので、先行処理のフィールドには処理1-1~1-10が設定される。処理2-1について、後続処理は処理3-1であるので、後続処理のフィールドには処理3-1が設定される。処理2-2~処理2-10についても同様である。処理3-1について、先行処理は処理2-1~2-10のすべてであるので、先行処理のフィールドには処理2-1~2-10が設定される。処理3-2~処理3-10についても同様である。処理3-1~3-10について、何れも後続処理がないので、後続処理のフィールドにはヌルが設定される。処理3-1~3-10については、処理情報33にプログラムコード41が記述されていない。つまり、処理3-1~3-10は、実質的に何も実行されない。処理3-1~3-10が設定されていることによって、各端末は、処理2-1~2-10を投機的に実行することができる。端末の説明図7は、実施例2にかかる端末を示すブロック図である。図7に示すように、端末51は、例えばCPU52、通信部53及びメモリ54を備えている。CPU52、通信部53及びメモリ54は、バス55に接続されている。CPU52は、OSやライブラリ56を実行する。CPU52がOSやライブラリ56を実行することによって、受信ユニット及び処理ユニットの一例として例えばバリア処理部57及び受信部58が実現される。受信部58は、処理要求に応答して当該処理要求に対応する処理情報を取得する。また、受信部58は、取得した処理情報に含まれる処理フラグにトルーを設定する。受信部58の動作については、端末における並列処理要求受信時及び処理結果受信時の各動作として後述する。バリア処理部57は、処理の実行後に当該処理に対応する処理情報の終了フラグにトルーを設定する。バリア処理部57は、投機的な処理の対象となる処理の処理情報を取得し、当該処理情報に含まれる処理フラグに基づいて投機的な処理を行うか否かを判断する。また、バリア処理部57は、処理の終了後に処理結果を生成して基地局へ送信する。バリア処理部57の動作については、端末におけるバリア処理時の動作として後述する。処理結果については、後述する。また、OSやライブラリ56の実行によって、スケジューラ部59及びスレッド管理部60が実現される。スケジューラ部59は、タイムスライス実行により一つのプロセッサで複数のスレッドを切り替えて実行する際に、スレッドの切り替えを制御する。タイムスライス実行により、プロセッサが一つでも、擬似的に複数の処理が同時に動作しているように見せかけることができる。スレッド管理部60は、起動されたスレッドを管理する。また、CPU52は、種々のアプリケーションプログラムを実行する。メモリ54は、例えばCPU52の作業領域として用いられる。メモリ54には、各部分ループ処理に関する処理情報61及び利用データ領域62,63が展開される。図2に示す例では、利用データ領域62として配列Aの格納領域が展開される。利用データ領域63として配列Bの格納領域が展開される。メモリ54の一例として、例えばRAMが挙げられる。通信部53は、携帯電話網に無線通信により接続して基地局との間で例えばパケットの送受信を行う。処理結果の説明図8は、実施例2にかかる処理結果の一例を示す模式図である。図8に示すように、処理結果71には、データ72及び付随情報73が含まれている。データ72には、部分ループ処理の結果として出力されたデータが格納される。付随情報73には、処理名、処理端末及びデータ領域の各フィールドが設定されている。基地局における並列処理開始時の動作図9は、実施例2にかかる基地局における並列処理開始時の動作を示すフローチャートである。処理要求配布部18は、並列処理の開始を指示されると、動作を開始する。図9に示すように、処理要求配布部18は、動作を開始すると、まず、記録装置13から並列処理情報20を読み込んで、並列処理情報20に記録されている並列処理要求31をメモリ14に展開する展開したものが、図4の並列処理要求21。また、処理要求配布部18は、基地局側利用情報32に指定されている回収データの情報に基づいて、メモリ14に回収データ格納領域22を用意するステップS11。次いで、処理要求配布部18は、基地局側利用情報32に指定されている必要端末数の情報に基づいて、並列処理をさせる端末、すなわち処理対象の端末を選別するステップS12。また、処理要求配布部18は、基地局側利用情報32に指定されている開始対象処理の情報に基づいて、開始対象処理に対応する処理要求を取得するステップS13。なお、ステップS12とステップS13とは、何れが先であってもよい。次いで、処理要求配布部18は、ステップS13で取得した各処理要求に、ステップS12で選別した端末を重複しないように設定するステップS14。そして、処理要求配布部18は、メモリ14に展開されている並列処理要求21の対応する処理情報33の処理端末フィールドに、設定した端末の例えば識別情報を書き込む。最初に処理要求に端末を設定する際には、一台の端末に一つの処理要求が割り当てられるようにしてもよい。次いで、処理要求配布部18は、ステップS12で選別したすべての端末に処理要求を送信するステップS15。次いで、処理要求配布部18は、基地局側利用情報32において待ち対象処理に指定されている処理に対応するすべての処理情報33の終了フラグをチェックするステップS16。そして、ステップS16でチェックしたすべての終了フラグがトルーになるまで待機するステップS17:No。該当するすべての終了フラグがトルーになるとステップS17:Yes、並列処理がすべて終了し、処理結果がメモリ14の回収データ格納領域22に格納される。そして、処理要求配布部18は、一連の並列処理開始時の動作を終了する。基地局における処理結果受信時の動作図10は、実施例2にかかる基地局における処理結果受信時の動作を示すフローチャートである。処理結果受信部19は、上述したように処理要求配布部18がすべての待ち対象処理の終了フラグがトルーになるのを待つ間にステップS16、ステップS17、並列処理をしている端末から通信部15が処理結果71を受信すると、割り込みによって動作を開始する。このとき、複数の端末からほぼ同時に同じ処理に対する処理結果を受信した場合には、基地局は、何れか一つの処理結果を有効とし、他の処理結果を無効とする。例えば、基地局は、先に受信した処理結果を有効とし、後から受信した処理結果を無効としてもよい。図10に示すように、処理結果受信部19は、動作を開始すると、まず、受信した処理結果71の処理名フィールドから処理名を取得するステップS21。次いで、処理結果受信部19は、メモリ14から、ステップS21で取得した処理名に対応する処理情報33の終了フラグの値を取得するステップS22。ステップS22で取得した終了フラグがトルーであればステップS23:No、基地局はステップS21で取得した処理名に対応する処理結果をすでに受け取っていることになる。従って、処理結果受信部19は、一連の処理結果受信時の動作を終了し、処理要求配布部18による並列処理開始時の動作に処理を戻す。ステップS22で取得した終了フラグがフォールスであればステップS23:Yes、処理結果受信部19は、並列処理をしているすべての端末に、受信した処理結果71を一斉配信するステップS24。それによって、並列処理をしているすべての端末が、他の端末で実行されている部分ループ処理が終了したことを知ることができる。次いで、処理結果受信部19は、ステップS21で取得した処理名に対応する処理情報33の終了フラグをトルーに設定するステップS25。なお、ステップS24とステップS25とは、何れが先であってもよい。次いで、ステップS21で取得した処理名に対応する処理が並列処理情報20の基地局側利用情報32において待ち対象処理に指定されていない場合ステップS26:No、処理結果受信部19は、一連の処理結果受信時の動作を終了する。そして、処理要求配布部18による並列処理開始時の動作に処理が戻る。ステップS21で取得した処理名に対応する処理が待ち対象処理に指定されている場合ステップS26:Yes、処理結果受信部19は、メモリ14に用意された回収データ格納領域22に処理結果71のデータ72を展開するステップS27。そして、処理結果受信部19は、一連の処理結果受信時の動作を終了し、処理要求配布部18による並列処理開始時の動作に処理を戻す。端末における並列処理要求受信時の動作図11は、実施例2にかかる端末における並列処理要求受信時の動作を示すフローチャートである。受信部58は、基地局から並列処理要求を受信すると、動作を開始する。図11に示すように、受信部58は、動作を開始すると、まず、メモリ54に処理情報61及び利用データ領域62,63を展開するのに必要な領域のサイズを算出するステップS31。次いで、受信部58は、メモリ54に、ステップS31で算出したサイズ分のメモリ領域を確保するステップS32。次いで、受信部58は、メモリ54に、受信した並列処理要求に含まれている処理情報61を展開するステップS33。また、受信部58は、メモリ54に利用データ領域62,63を展開するステップS34。なお、ステップS33とステップS34とは、何れが先であってもよい。データに初期値が設定されている場合には、受信部58は、メモリ54に展開された利用データ領域62,63にデータの初期値の情報をコピーするステップS35。次いで、受信部58は、メモリ54に展開した処理情報61の中から、処理端末として自端末が指定されている処理情報61を取得するステップS36。メモリ54に展開された処理情報61において、処理端末フィールドに自端末の識別情報が設定されていれば、処理端末として自端末が指定されていることになる。次いで、受信部58は、ステップS36で取得した処理情報61の処理フラグをトルーに設定するステップS37。次いで、受信部58は、新規スレッドを立ち上げて、取得した処理情報61のプログラムコードを実行させるステップS38。また、受信部58は、ステップS36で取得した処理情報61の処理スレッドフィールドに、ステップS38で立ち上げたスレッドのID識別情報を記録するステップS39。なお、ステップS37~ステップS39の処理の順番は、問わない。そして、受信部58は、一連の並列処理要求受信時の動作を終了する。端末における処理結果受信時の動作図12は、実施例2にかかる端末における処理結果受信時の動作を示すフローチャートである。図13は、図12の続きを示すフローチャートであり、図14は、図13の続きを示すフローチャートである。受信部58は、基地局から他の端末からの処理結果を受信すると、動作を開始する。図12に示すように、受信部58は、動作を開始すると、まず、受信した処理結果71の処理名フィールドから処理名を取得し、メモリ54から、取得した処理名に対応する処理情報61を取得するステップS41。次いで、受信部58は、ステップS41で取得した処理情報61の終了フラグの値と処理フラグの値を確認するステップS42。確認した結果、終了フラグがトルーであればステップS43:No、ステップS41で取得した処理名に対応する処理が自端末で終了していることになる。しかし、上述したように、基地局が複数の端末から、同じ処理に対する処理結果を受信した場合には、何れか一つの処理結果が有効となる。従って、自端末で処理が終了したことよりも、基地局から配信されてきた処理結果71の方が有効となる。そこで、受信部58は、ステップS41で取得した処理情報61の処理端末フィールドに、受信した処理結果71に設定されている処理端末の情報を書き込むステップS44。そして、受信部58は、一連の処理結果受信時の動作を終了する。一方、ステップS42で確認した終了フラグがフォールスである場合ステップS43:Yes、ステップS41で取得した処理名に対応する処理が自端末では終了していないことになる。そこで、ステップS42で確認した処理フラグの値に基づいて、ステップS41で取得した処理名に対応する処理が自端末で投機的に実行されているか否かがチェックされる。ステップS42で確認した処理フラグがフォールスである場合ステップS45:No、ステップS41で取得した処理名に対応する処理は、自端末では投機的に実行されていないことになる。そこで、受信部58は、ステップS41で取得した処理情報61の処理フラグ及び終了フラグをトルーに設定するステップS46、ステップS47。なお、ステップS46とステップS47とは、何れが先であってもよい。一方、ステップS42で確認した処理フラグがトルーである場合ステップS45:Yes、ステップS41で取得した処理名に対応する処理が自端末で既に投機的に実行されていることになる。そこで、受信部58は、ステップS41で取得した処理情報61の処理スレッドフィールドからスレッドのIDを取得しステップS48、取得したIDに対応するスレッドの投機的な実行をキャンセルするステップS49。そして、受信部58は、ステップS41で取得した処理情報61の終了フラグをトルーに設定するステップS47。なお、ステップS49とステップS47とは、何れが先であってもよい。次いで、図13に示すように、受信部58は、ステップS41で取得した処理情報61の処理端末フィールドに、受信した処理結果71に設定されている処理端末の情報を書き込むステップS50。そして、受信部58は、メモリ54の利用データ領域62,63に、受信した処理結果71に含まれているデータ72をコピーするステップS51。例えば図2に示す例の場合、データ72は、配列Aのデータである場合には利用データ領域62に、配列Bのデータである場合には利用データ領域63に、それぞれコピーされる。なお、ステップS50とステップS51とは、何れが先であってもよい。次いで、受信部58は、バリア処理待ちのスレッドがあるか否かを確認する。バリア処理待ちのスレッドがない場合ステップS52:No、受信部58は、一連の処理結果受信時の動作を終了する。一方、バリア処理待ちのスレッドがある場合ステップS52:Yes、受信部58は、バリア処理待ちのスレッドのID識別情報に対応する処理情報61をメモリ54から取得するステップS53。そして、受信部58は、ステップS53で取得した処理情報61の後続処理の処理情報61をメモリ54から取得するステップS54。例えば図2に示す例の場合で、処理1-1を行っているスレッドがバリア処理待ち状態であるときには、受信部58は、処理1-1の後続処理である処理2-1の処理情報61をメモリ54から取得する。次いで、受信部58は、ステップS54で取得した処理情報61の先行処理の処理情報61をメモリ54から取得するステップS55。例えば図2に示す例の場合で、ステップS54で処理2-1の処理情報61を取得した場合、受信部58は、処理2-1の先行処理である処理1-1~1-10の処理情報61をメモリ54から取得する。次いで、図14に示すように、受信部58は、ステップS55で取得したすべての先行処理について処理情報61の終了フラグの値を確認する。すべての先行処理の終了フラグがトルーである場合にはステップS56:Yes、受信部58は、バリア処理待ち状態のスレッドのバリア処理待ち状態を解除するステップS57。そして、受信部58は、一連の処理結果受信時の動作を終了する。一方、一つでも先行処理の終了フラグがトルーでない場合にはステップS56:No、受信部58は、何もせずに、一連の処理結果受信時の動作を終了する。例えば図2に示す例で、処理1-1がバリア処理待ち状態であるときに、処理1-1の後続処理である処理2-1に先行するすべての処理1-1~1-10が終了すると、処理1-1のバリア処理待ち状態を解除することができる。そこで、ステップS54で、受信部58は、バリア処理待ち状態の処理の後続処理2-1を確認する。そして、ステップS55及びステップS56で、受信部58は、この後続処理2-1に対して先行するすべての処理1-1~1-10が終了しているか否かを確認する。処理1-1~1-10が終了していれば、受信部58は、処理1-1のバリア処理待ち状態を解除して後続処理2-1を開始することができる。端末におけるバリア処理時の動作端末でスレッドの処理が進むと、バリア処理が呼び出される。例えば図2に示す例で、処理1-1、処理2-1及び処理3-1が割り当てられた端末において、処理2-1が終了してバリア処理が呼び出されたとする。この場合のバリア処理では、起こり得るケースとしては次の三つが考えられる。第1に、当該端末において、処理1-1の終了後に投機的に実行した処理1-2が最後まで終了したため、処理2-1の終了後に処理1-2の後続処理である処理2-2を優先的に実行するケースがある第1のケース。第2に、処理2-2~2-10で終わっていない処理があるため、当該端末において処理2-2~2-10のうちの終わっていない処理を投機的に実行するとともに、バリア処理待ち状態となるケースがある第2のケース。第3に、バリア処理が呼び出された時点で処理2-2~2-10がすべて終了していて、当該端末において次の処理3-1を実行することが可能な状態となっているケースがある第3のケース。以下、三つのケースごとに説明する。図15は、実施例2にかかる端末におけるバリア処理時の動作を示すフローチャートである。図16は、図15の続きを示すフローチャートである。図17は、図15及び図16の続きを示すフローチャートである。図18は、図16及び図17の続きを示すフローチャートである。バリア処理が呼び出されると、バリア処理部57は、動作を開始する。第1のケース図15に示すように、バリア処理部57は、動作を開始すると、まず、バリア処理を呼び出したスレッドのID識別情報に対応する処理情報61をメモリ54から取得するステップS61。次いで、バリア処理部57は、ステップS61で取得した処理情報61の終了フラグをトルーに設定するステップS62。次いで、バリア処理部57は、ステップS61で取得した処理情報61のデータ出力領域フィールドの情報に基づいて、図8に示すような処理結果71を生成しステップS63、処理結果71を基地局へ送信するステップS64。なお、ステップS62は、ステップS63の後でもよいし、ステップS64の後でもよい。次いで、バリア処理部57は、メモリ54に展開した処理情報61の中から、処理端末として自端末が指定されており、かつバリア同期の処理を呼び出したスレッドで行われている処理に対して先行処理となるすべての処理の処理情報61を取得するステップS65。そして、バリア処理部57は、ステップS65で取得したすべての処理情報61の後続処理となる処理情報61をメモリ54から取得するステップS66。例えば図2に示す例で、処理2-1がバリア同期の処理を呼び出したスレッドで行われている処理であるときに、バリア処理部57は、処理2-1の先行処理である処理1-1~1-10のうち、処理端末として自端末が指定されている処理情報61を取得する。例えば、処理1-1、処理1-2及び処理1-3の各処理情報61において、処理端末として自端末が指定されている場合、現時点よりも前に、自端末が処理1-1、処理1-2及び処理1-3を最後まで実行していたことになる。処理1-1が、本来、自端末が実行する処理である場合、処理1-2及び処理1-3は、過去に自端末が投機的に実行し、最後まで実行することができた処理である。そこで、自端末は、処理1-1の後続処理である処理2-1だけでなく、処理1-2及び処理1-3のそれぞれの後続処理である処理2-2及び処理2-3も実行する。従って、バリア処理部57は、処理1-1、処理1-2及び処理1-3のそれぞれの後続処理である処理2-1、処理2-2及び処理2-3の処理情報61を取得する。次いで、バリア処理部57は、ステップS66で取得したすべての処理情報61のうち、処理フラグがフォールスである処理情報61があるか否か確認する。処理フラグがフォールスである処理情報61がある場合ステップS67:Yes、バリア処理部57は、新規スレッドを立ち上げて、処理フラグがフォールスである処理情報61のプログラムコードを実行させるステップS69。その際、処理フラグがフォールスである処理情報61が複数ある場合には、バリア処理部57は、複数の処理情報61の中から任意の一つを選択してステップS68、プログラムコードを実行させるステップS69。また、バリア処理部57は、ステップS69でプログラムコードが実行された処理情報61の処理スレッドフィールドに、ステップS69で立ち上げたスレッドのID識別情報を記録するステップS70。次いで、バリア処理部57は、ステップS69でプログラムコードが実行された処理情報61の処理端末フィールドに自端末の情報を記録し、当該処理情報61の処理フラグをトルーに設定するステップS71。なお、ステップS69~ステップS71の処理の順番は、問わない。次いで、図17に示すように、バリア処理部57は、バリア処理待ち状態のスレッドがあるか否かを確認する。バリア処理待ち状態のスレッドがない場合ステップS79:No、バリア処理部57は、ステップS69で立ち上げたスレッドをバリア処理待ちの状態に遷移させるステップS80。この状態で、端末の受信部58によって、バリア処理待ち状態のスレッドのバリア処理待ち状態が解除されると図14のステップS57、図18に示すフローチャートのステップS82へ進む。そして、図18に示すように、バリア処理部57は、バリア処理待ち状態が解除されたスレッドで行われていた処理に対する後続処理の処理情報61の処理フラグをトルーに設定するステップS82。また、バリア処理部57は、バリア処理待ち状態が解除されたスレッドで行われていた処理に対する後続処理の処理情報61の処理端末フィールドに自端末の情報を記録するステップS83。なお、ステップS82とステップS83とは、何れが先であってもよい。次いで、バリア処理部57は、バリア処理待ち状態が解除されたスレッドで行われていた処理に対する後続処理の処理情報61にプログラムコードが含まれているか否かを確認する。プログラムコードが含まれていない場合ステップS84:No、バリア処理部57は、バリア処理待ち状態が解除されたスレッドで行われていた処理に対する後続処理のスレッドの実行を終了しステップS88、一連のバリア処理時の動作を終了する。例えば図2に示す例では、バリア処理待ち状態が解除されたスレッドで行われていた処理に対する後続処理が例えば処理3-1~3-10である場合に、ステップS84でプログラムコードが含まれていない場合となる。ステップS84でプログラムコードが含まれている場合ステップS84:Yes、バリア処理部57は、新規スレッドを立ち上げて、バリア処理待ち状態が解除されたスレッドで行われていた処理に対する後続処理の処理情報61のプログラムコードを実行させるステップS85。また、バリア処理部57は、ステップS85でプログラムコードが実行された処理情報61の処理スレッドフィールドに、ステップS85で立ち上げたスレッドのID識別情報を記録するステップS86。そして、バリア処理部57は、バリア処理待ち状態が解除されたスレッドで行われていた処理に対する後続処理のスレッドの実行を終了しステップS88、一連のバリア処理時の動作を終了する。一方、ステップS79で、バリア処理待ち状態のスレッドがすでにある場合ステップS79:Yes、図18に示すように、バリア処理部57は、ステップS69で立ち上げたスレッドの実行を終了しステップS88、一連のバリア処理時の動作を終了する。ステップS67で、処理フラグがフォールスである処理情報61が複数ある場合には、第1のケースの処理が複数回行われる。例えば図2に示す例で、端末が、本来処理すべき処理2-1の実行が終了した後、処理2-2及び処理2-3を投機的に実行する場合、1回目の第1のケースの処理によって例えば処理2-2の投機的な実行を行ったとする。処理2-2の終了によってバリア処理が呼び出されると、当該端末は、2回目の第1のケースの処理によって例えば処理2-3の投機的な実行を行う。この繰り返しによって、複数の処理を投機的に実行することができる。第2のケース上述した第1のケースに対応する処理がないか、第1のケースに対応する最後の処理によってバリア処理が呼び出された場合には、図15に示すフローチャートのステップS67で、処理フラグがフォールスである処理情報61がない状態となるステップS67:No。従って、図16に示すように、バリア処理部57は、ステップS61で取得した処理情報61の後続処理に対応する処理情報61をメモリ54から取得するステップS72。次いで、バリア処理部57は、ステップS72で取得した処理情報61の先行処理に対応するすべての処理要求をメモリ54から取得するステップS73。次いで、バリア処理部57は、ステップS73で取得した処理要求において、処理フラグがフォールスである処理情報61があるか否か確認する。処理フラグがフォールスである処理情報61がある場合ステップS74:Yes、投機的に実行可能な処理が存在することになる。従って、バリア処理部57は、処理フラグがフォールスである処理情報61ごとに新規スレッドを立ち上げて、当該処理情報61のプログラムコードを実行させるステップS75。また、バリア処理部57は、ステップS75でプログラムコードが実行された各処理情報61の処理スレッドフィールドに、ステップS75で立ち上げたスレッドのID識別情報を記録するステップS76。次いで、バリア処理部57は、ステップS69でプログラムコードが実行された各処理情報61の処理端末フィールドに自端末の情報を記録し、当該処理情報61の処理フラグをトルーに設定するステップS77。なお、ステップS75~ステップS77の処理の順番は、問わない。そして、図17に示すフローチャートのステップS79へ進む。次いで、図17に示すように、バリア処理部57は、バリア処理待ち状態のスレッドがあるか否かを確認する。バリア処理待ち状態のスレッドがない場合ステップS79:No、バリア処理部57は、ステップS75で立ち上げたスレッドをバリア処理待ちの状態に遷移させるステップS80。この状態で、端末の受信部58によって、バリア処理待ち状態のスレッドのバリア処理待ち状態が解除されると図14のステップS57、図18に示すフローチャートのステップS82へ進む。ステップS82以降、またはステップS79で、バリア処理待ち状態のスレッドがすでにある場合ステップS79:Yesは、何れも上述した第1のケースと同様である。一方、ステップS74で、処理フラグがフォールスである処理情報61がない場合ステップS74:No、投機的に実行可能な処理がないことになる。そこで、バリア処理部57は、ステップS73で取得した処理要求において、終了フラグがフォールスである処理情報61があるか否か確認する。終了フラグがフォールスである処理情報61がある場合ステップS78:Yes、投機的に実行中の処理が存在することになる。この場合、図17に示すフローチャートのステップS79へ進む。次いで、図17に示すように、バリア処理待ち状態のスレッドがない場合ステップS79:No、バリア処理部57は、終了フラグがフォールスである処理情報61の処理、すなわち投機的に実行中の処理を行っているスレッドをバリア処理待ちの状態に遷移させるステップS80。これ以降、またはステップS79で、バリア処理待ち状態のスレッドがすでにある場合ステップS79:Yesは、何れも上述した第1のケースと同様である。第3のケース投機的に実行可能な処理がなく、かつ投機的に実行中の処理もない状態でバリア処理が呼び出された場合には、図16に示すフローチャートのステップS78で、終了フラグがフォールスである処理情報61がない状態となるステップS78:No。この状態で、図18に示すように、バリア処理待ち状態のスレッドがある場合ステップS81:Yes、バリア処理部57は、当該スレッドのバリア処理待ち状態を解除するステップS87。そして、バリア処理部57は、バリア処理待ち状態を解除したスレッドの実行を終了しステップS88、一連のバリア処理時の動作を終了する。一方、バリア処理待ち状態のスレッドがない場合ステップS81:No、当該端末において、現在のスレッドがこの段で最初に実行された処理であり、他の端末で処理が終了しているので、バリア処理待ちを行う必要がない状態である。従って、受信部58によってバリア処理待ち状態が解除された場合と同様に、バリア処理部57は、ステップS82以降の処理を行う。実施例2によれば、実施例1と同様の効果が得られる。また、各端末が、終了していない処理を独立したスレッドとしてタイムスライス実行により投機的に実行するので、どの処理を投機的に実行すればよいかわからないという不都合が生じるのを防ぐことができる。実施例3実施例3は、実施例2において、端末が投機的に実行するスレッドに優先度を設定し、タイムスライス実行時に優先度が高いスレッドに対してより多くのCPU時間を割り当てるようにしたものである。投機処理の優先度設定時の並列処理の説明図19は、投機処理の優先度設定時の並列処理を説明する模式図である。図19に示す例では、優先度として高と低の2種類が設定されており、高優先度のスレッドが線で囲まれて示されている。また、端末の数が6台である例が示されている。図19に示すように、端末1は、自身に割り当てられた処理を行うスレッド1の実行を終了した後に、2~6の各スレッドを高優先で投機的に実行している。この時点で、端末1は、高優先で投機的に実行しているスレッドの数が最も多い端末である。端末2は、自身に割り当てられた処理を行うスレッド2の実行が終了すると、端末1において高優先で投機的に実行されているスレッドの数の半分もしくは約半分の数のスレッド5及び6を高優先で投機的に実行する。端末1では、端末2で高優先に設定されたスレッド5及び6の優先度が低に変更される。この時点で、例えば端末2が、高優先で投機的に実行しているスレッドの数が最も多い端末であるとする。端末3は、自身に割り当てられた処理を行うスレッド3の実行が終了すると、端末2において高優先で投機的に実行されているスレッドの数の半分もしくは約半分の数のスレッド6を高優先で投機的に実行する。端末2では、端末3で高優先に設定されたスレッド6の優先度が低に変更される。他の端末においても同様である。このようにすることによって、並列処理をしている端末間で、高優先で投機的に実行されるスレッドの数が平均化される。また、投機的な実行の対象となるスレッドが減ると、投機的な実行をしている端末の数が投機的な実行の対象となるスレッドの数よりも多くなる。この場合には、複数の端末で同じスレッドが高優先で投機的に実行されることになる。従って、高優先で実行している端末の数が最も少ないスレッドが高優先で実行される。このようにすることによって、投機的な実行の対象となるスレッドの中で高優先で実行されるスレッドの数が平均化される。例えば、図19に示す例では、例えば1~4の端末でスレッド5とスレッド6とが高優先に設定されており、均等に実行されている。処理情報の説明図20は、実施例3にかかる処理情報の一例を示す模式図である。図20に示すように、処理情報81の付随情報82には、実施例2にかかる処理情報33の付随情報42に加えて図6参照、高優先フラグ及び高優先処理端末リストの各フィールドが設定されている。例えば、高優先フラグがトルーである場合、処理情報81に対応する処理を行うスレッドは高優先に設定される。高優先フラグフィールドには、初期値として、例えばトルーが設定されていてもよい。高優先フラグの初期値がトルーである場合、各スレッドは、高優先で動作するように起動される。高優先処理端末リストフィールドには、処理情報81に対応する処理を行うスレッドを高優先で実行している端末が記録される。端末における処理結果受信時の動作図21は、実施例3にかかる端末における処理結果受信時の動作を図13の続きとして示すフローチャートである。すなわち、実施例3では、受信部58は、実施例2において図12~図14を参照しながら説明した処理結果受信時の動作において、図14に示すフローチャートの部分を図21に示すフローチャートに置き換えた動作をする。以下に、実施例2とは異なる点についてのみ説明する。従って、図12及び図13に示すフローチャートについては、説明を省略する。ステップS41~ステップS57は、実施例2で説明したとおりである。図21に示すように、図13のステップS55で取得したすべての先行処理について、一つでもトルーでない終了フラグがある場合にはステップS56:No、受信部58は、ステップS55で取得したすべての先行処理の高優先フラグを取得するステップS91。そして、受信部58は、ステップS91で取得したすべての先行処理について高優先フラグの値を確認する。一つでもフォールスでない終了フラグがある場合にはステップS92:No、受信部58は、バリア処理待ち状態のスレッドのバリア処理待ち状態を解除しステップS57、一連の処理結果受信時の動作を終了する。ステップS91で取得したすべての先行処理の高優先フラグがフォールスである場合ステップS92:Yes、高優先に設定されているスレッドの実行がすべて終了したことになる。従って、受信部58は、優先度設定処理を実行しステップS93、一連の処理結果受信時の動作を終了する。優先度設定処理については、後述する。端末におけるバリア処理時の動作図22は、実施例3にかかる端末におけるバリア処理時の動作を図15の続きとして示すフローチャートである。すなわち、実施例3では、バリア処理部57は、実施例2において図15~図18を参照しながら説明したバリア処理時の動作において、図16に示すフローチャートの部分を図22に示すフローチャートに置き換えた動作をする。以下に、実施例2とは異なる点についてのみ説明する。従って、図15、図17及び図18に示すフローチャートについては、説明を省略する。ステップS61~ステップS67及びステップS72~ステップS77は、実施例2で説明したとおりである。図22に示すように、ステップS61~ステップS67及びステップS72~ステップS77において複数のスレッドが起動されると、バリア処理部57は、優先度設定処理を実行しステップS96、図17のステップS79へ進む。バリア処理時のその他の動作については、実施例2で説明したとおりである。端末における優先度設定処理時の動作図23は、実施例3にかかる端末における優先度設定処理時の動作を示すフローチャートである。図24は、図23の続きを示すフローチャートである。図23に示すように、優先度設定処理が開始されると、端末は、まず、メモリ54に展開されている処理情報61から、終了フラグがフォールスであり、かつ処理フラグがトルーであるすべての処理情報61を取得するステップS101。次いで、端末は、ステップS101で取得した処理情報61の高優先処理端末リストを取得するステップS102。そして、端末は、ステップS102で取得した高優先処理端末リストが空であるか否かを確認する。確認したすべての高優先処理端末リストが空である場合ステップS103:Yes、自端末以外に高優先で処理を実行している端末がないことになる。従って、端末は、割り当てられた処理を最初に終了したのが自端末であるということを認識することができる。端末は、割り当てられた処理を最初に終了したのが自端末であるということを認識すると、ステップS101で取得したすべての処理情報61の高優先処理端末リストフィールドに自端末の情報を記録するステップS104。これによって、割り当てられた処理を最初に終了した端末では、投機的に実行される処理がすべて高優先で実行されることになる。次いで、端末は、ステップS101で取得したすべての処理情報61の処理名の情報をリストにして基地局へ送信するステップS105。送信された処理名情報のリストは、基地局で該リストの送信元の端末名が付されて基地局から一斉に配信される。そして、処理結果受信時の処理またはバリア処理に戻る。一方、高優先処理端末リストが空でない場合ステップS103:No、図24に示すように、端末は、ステップS101で取得したすべての処理情報61に基づいて、端末ごとに高優先で実行される処理の数を集計するステップS106。次いで、端末は、ステップS106で集計した高優先で実行される処理の数の最大値が1であるか否かを確認する。高優先で実行される処理の数の最大値が1である場合ステップS107:Yes、端末は、ステップS101で取得した処理情報61の中から、高優先処理端末リストフィールドに記録されている端末の数が最小である処理情報61を一つ選択するステップS108。次いで、端末は、ステップS108で選択した処理情報61の高優先処理端末リストフィールドに自端末の情報を追加するステップS109。そして、端末は、ステップS108で選択した処理情報61の高優先フラグをトルーに設定するステップS110。また、端末は、ステップS101で取得した処理情報61のうち、ステップS108で選択した処理情報61以外の処理情報61の高優先フラグをフォールスに設定するステップS111。なお、ステップS110とステップS111とは、何れが先であってもよい。ステップS108~ステップS111によって、投機的な実行をしている端末の数が投機的に実行される処理の数よりも多い場合に、高優先の処理が均等に実行されるように、優先度が設定される。次いで、端末は、ステップS108で選択した処理情報61の処理名、すなわち高優先で処理することにした処理の処理名の情報を基地局へ送信するステップS112。送信された処理名の情報は、基地局で該処理名の送信元の端末名が付されて基地局から一斉に配信される。次いで、端末は、ステップS110及びステップS111で設定した高優先フラグの値に基づいて、ステップS101で取得した処理情報61の処理を行うスレッドの優先度を変更するステップS113。そして、処理結果受信時の処理またはバリア処理に戻る。一方、高優先で実行される処理の数の最大値が1でない場合ステップS107:No、端末は、端末ごとに集計された、高優先で実行される処理の数が最大である端末を一つ選択するステップS114。次いで、端末は、ステップS114で選択した端末において高優先で実行される処理とされている処理の任意の半分もしくは約半分の数の処理を選択するステップS115。次いで、端末は、ステップS115で選択した処理に対応する処理情報61の高優先フラグをトルーに設定する。また、端末は、高優先処理端末リストフィールドに記録されている端末の情報を自端末の情報に変更するステップS116。また、端末は、ステップS101で取得した処理情報61のうち、ステップS115で選択した処理以外の処理に対応する処理情報61の高優先フラグをフォールスに設定するステップS117。なお、ステップS116とステップS117とは、何れが先であってもよい。ステップS114~ステップS117によって、例えば図19に示す例の1~3の端末の前半部分のように、高優先で実行されている処理の数が最も多い端末から任意の半分を選択して自端末で高優先で処理するように、優先度が設定される。次いで、端末は、ステップS115で選択した処理の処理名のリストを基地局へ送信するステップS118。送信された処理名のリストは、基地局で該リストの送信元の端末名が付されて基地局から一斉に配信される。次いで、端末は、ステップS116及びステップS117で設定した高優先フラグの値に基づいて、ステップS101で取得した処理情報61の処理を行うスレッドの優先度を変更するステップS113。そして、処理結果受信時の処理またはバリア処理に戻る。ステップS105、ステップS112及びステップS118において、基地局へ処理名を送信することによって、並列処理を行っている端末間で情報を共有することができる。従って、例えば投機的な処理の実行中に通信不能となった端末があっても、当該端末が高優先で実行している処理を、情報を共有している他の端末から知ることができる。端末が、基地局から一斉に配信された処理名の情報を受け取ったときの動作高優先処理名リスト受信時の動作については、次に説明する。端末における高優先処理名リスト受信時の動作図25は、実施例3にかかる端末における高優先処理名リスト受信時の動作を示すフローチャートである。端末は、基地局から一斉に配信された処理名の情報を受け取ると、高優先処理名リスト受信時の動作を開始する。図25に示すように、端末は、高優先処理名リスト受信時の動作を開始すると、まず、端末は、受信した処理名の数を計算しステップS121、受信した処理名の数が1であるか否かを確認する。受信した処理名の数が1でない場合ステップS122:No、投機的に実行される処理の数が投機的な実行をしている端末の数よりも多いことになる。一つの処理を高優先で処理することができるのは、原則的に一つの端末である。従って、受信した処理名の処理を自端末で高優先で処理している場合には、自端末で高優先で処理している処理を低優先に変更する。そこで、端末は、受信したすべての処理名に対応する処理情報61の高優先フラグをフォールスに変更するステップS123。その際、例えば図19に示す例で、端末2がスレッド2を終了するタイミングと端末3がスレッド3を終了するタイミングとが同時であるとする。この場合、端末2と端末3とは、端末1で高優先で実行されていたスレッド5及びスレッド6の各処理を自端末で高優先で実行することとして、処理名を基地局へ送信する。端末2及び端末3は、基地局から一斉に配信された処理名の情報を受け取ると、受け取った処理名の情報に、自端末で高優先で実行するとしたスレッド5及びスレッド6の各処理が含まれていることになる。従って、ステップS123によって、端末2及び端末3は、自端末で高優先で実行するとしたスレッド5及びスレッド6の各処理を低優先に変更してしまうので、端末2及び端末3には、高優先で行う処理がなくなってしまう。そこで、端末は、ステップS123で高優先フラグをフォールスに変更した後、高優先フラグがトルーに設定されている処理情報61の数を算出しステップS124、算出した値が0であるか否かを確認する。ステップS124で算出した値が0である場合ステップS125:Yes、端末は、受信したすべての処理名に対応する処理情報61の高優先フラグをトルーに変更するステップS132。ステップS132によって、ステップS123で自端末での処理を低優先に変更したために、自端末に高優先で行う処理がなくなってしまうのを回避することができる。そして、端末は、受信した処理名に対応する処理情報61の高優先処理端末リストフィールドに当該処理名の情報の送信元の端末の情報を追加しステップS128、一連の高優先処理名リスト受信時の動作を終了する。一方、ステップS124で算出した値が0でない場合ステップS125:No、端末は、ステップS123で高優先フラグをフォールスに変更した処理情報61の高優先処理端末リストフィールドから自端末の情報を削除するステップS126。次いで、端末は、ステップS123で高優先フラグをフォールスに変更した処理情報61に対応するスレッドがある場合には、当該スレッドの処理情報を低優先に変更するステップS127。そして、端末は、受信した処理名に対応する処理情報61の高優先処理端末リストフィールドに当該処理名の情報の送信元の端末の情報を追加しステップS128、一連の高優先処理名リスト受信時の動作を終了する。ステップS123、ステップS126及びステップS128により、受信した処理名に対応する処理を、自端末は低優先で実行し、当該処理名の情報の送信元の端末が高優先で実行するようにできる。一方、ステップS121の計算結果が1である場合ステップS122:Yes、端末は、メモリ54から、終了フラグがフォールスであり、かつ処理フラグがトルーであり、かつ高優先フラグがトルーであるすべての処理情報61を取得するステップS129。そして、端末は、ステップS129で取得した処理情報61の数、すなわち高優先フラグがトルーである処理情報61の数を算出するステップS130。ステップS130で算出した値が1である場合ステップS131:Yes、投機的な実行をしている端末の数が投機的に実行される処理の数よりも多いか、自端末では、受信した処理名に対応する処理を高優先で行っていないことになる。従って、端末は、受信した処理名に対応する処理情報61の高優先処理端末リストフィールドに当該処理名の情報の送信元の端末の情報を追加しステップS128、一連の高優先処理名リスト受信時の動作を終了する。一方、ステップS130で算出した値が1でない場合ステップS131:No、投機的に実行される処理の数が投機的な実行をしている端末の数よりも多いことになる。従って、この場合には、ステップS123以降の動作を行い、受信した処理名に対応する処理を、自端末は低優先で実行し、当該処理名の情報の送信元の端末が高優先で実行するようにする。実施例3によれば、実施例2と同様の効果が得られる。また、投機的に実行される処理に優先度を設定することによって、効率よく投機的な実行を行うことができる。"