(57)【要約】【課題】各クライアントへのデータの到達時間を平均化し、複数のクライアントへデータを公平に配信する。【解決手段】取引所システム１とデータ配信先の複数のクライアント４ａ，４ｂにネットワーク２，５を介して接続された通信サーバ３は、ネットワーク２から受信された電文を複数の電文キュー３３ａ，３３ｂ…に記憶するデータ受信部３１と、各電文キュー３３ａ，３３ｂ…に記憶された電文を、クライアント４ａ，４ｂへ送信する複数の送信スレッド３２ａ，３２ｂ…と、複数の電文キューへ記憶された送信待ちの電文件数をスレッド管理テーブル３５に記憶するスレッド管理部３４と、スレッド管理テーブル３５の送信待ちの全電文件数から他よりも多く電文を送信しようとする送信スレッドに対して待ち時間を与えて電文の送信を抑制するスレッド制御部３７とを備える。【選択図】図１
2010067052.tif 000002
【特許請求の範囲】
【請求項１】
データ供給元のコンピュータとデータ配信先の複数のクライアントコンピュータにネットワークを介して接続されたデータ配信用のサーバコンピュータにおいて、
電文キューを持ち、この電文キューに記憶された電文を対応するクライアントコンピュータに送信するための複数の電文送信手段と、
前記データ供給元のコンピュータから受信した電文を前記複数の電文送信手段に設けられた前記電文キューに記憶するためのデータ受信手段と、
前記各電文キューに記憶されている送信待ちの電文の件数を検出する管理手段と、
前記管理手段が検出した送信待ちの電文の件数に基づき、前記複数の電文送信手段に待ち時間を与えて電文の送信を抑制させる制御手段と
を具備することを特徴とするサーバコンピュータ。
【請求項２】
前記制御手段は、
個別の前記電文送信手段に設けられた前記電文キューに記憶されている電文件数が前記複数の電文送信手段に設けられた前記電文キューに記憶されている全体の電文件数の平均値からどれだけ乖離しているかを示す乖離値に基づいて前記待ち時間を与えることを特徴とする請求項１記載のサーバコンピュータ。
【請求項３】
データ供給元のコンピュータと、電文キューを持ち、この電文キューに記憶された電文を対応するクライアントコンピュータに送信するための複数の電文送信手段を持つデータ配信用のサーバコンピュータとから成るシステムにおいて、
前記サーバコンピュータに、
前記データ供給元のコンピュータから受信した電文を前記複数の電文送信手段に設けられた前記電文キューに記憶するためのデータ受信機能と、
前記各電文キューに記憶されている送信待ちの電文の件数を検出する管理機能と、
前記管理機能が検出した送信待ちの電文の件数に基づき、前記複数の電文送信手段に待ち時間を与えて電文の送信を抑制させる制御機能と
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばサーバコンピュータおよびプログラムに関する。
【背景技術】
【０００２】
データ供給元とサーバと複数のクライアントとがネットワークを介して接続され、サーバがデータ供給元から受信したデータをコピーして多数のクライアントへ同じデータを配信する通信システムがある。例えば株券の売買に関する相場情報を多数の取引端末に配信する証券取引システムなどがこれに該当し、多数の取引端末に対して、相場情報を不公平にならないように配信する必要がある。株券とは株式会社の株主が持つ株式を示す有価証券である。
【０００３】
この場合、サーバ内では、複数のクライアント毎に１つ以上のスレッドが動作し、受信した１つの電文をそれぞれのスレッド毎に設けられた電文キューにコピーし、各スレッドは、ＣＰＵの使用時間が割り当てられることで電文キューの電文をクライアントへ送信している。
【０００４】
各スレッドに対してＣＰＵの使用時間は、順番に割り当てることから、送信待ちの電文の件数、電文キューの容量、クライアント側の負荷状態などによっては、同一の電文が各スレッドから送信される時間にズレが生じ、各クライアントへデータが届く時間がまちまちになる。
【０００５】
ネットワークに流れるデータの流量を最適化する技術の一つとして、例えばインターネットにおいて、インターネット上の平均流量が臨界流量よりも大きい場合にはインターネット上の流量を抑制し、小さい場合には抑制をしないような流量をコントロールする技術が開示されている（例えば特許文献１参照）。
【特許文献１】特開２００１−３６５７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、ネットワーク上のデータの流量を最適化することは、複数のクライアントへ電文が届くのが均等になることとは異なり、例えばデータのやりとりを頻繁に行う特定のスレッドの処理が優先されてしまい、結果として特定のクライアントに電文が先に届くという現象が発生する。
【０００７】
本発明はこのような課題を解決するためになされたもので、配信対象の電文を複数のクライアントへ公平に配信することができるサーバコンピュータおよびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために本発明のサーバコンピュータは、データ供給元のコンピュータとデータ配信先の複数のクライアントコンピュータにネットワークを介して接続されたデータ配信用のサーバコンピュータにおいて、電文キューを持ち、この電文キューに記憶された電文を対応するクライアントコンピュータに送信するための複数の電文送信手段と、データ供給元のコンピュータから受信した電文を複数の電文送信手段に設けられた電文キューに記憶するためのデータ受信手段と、各電文キューに記憶されている送信待ちの電文の件数を検出する管理手段と、管理手段が検出した送信待ちの電文の件数に基づき、複数の電文送信手段に待ち時間を与えて電文の送信を抑制させる制御手段とを具備することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、配信対象の電文を複数のクライアントへ公平に配信することができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態について図面を参照しながら説明する。図１は本発明の実施形態に係る証券取引システムの構成を示すブロック図である。
【００１１】
図１に示すように、この証券取引システムは、例えば証券取引所などに配置されたデータ供給元のコンピュータ１（以下「取引所システム１」と称す）とサーバコンピュータとしての通信サーバ３とがネットワーク２を介して接続され、通信サーバ３と複数のクライアントコンピュータ４ａ，４ｂ（以下「クライアント４ａ，４ｂ」と称す）とがネットワーク５を介して接続されたものである。
【００１２】
証券取引システムは、取引所システム１からネットワーク２を通じて通信サーバ３に受信された電文を通信サーバ３の内部で複製（コピー）して同じ電文を、ネットワーク５を通じて多数のクライアント４ａ，４ｂへ配信するシステムである。
【００１３】
証券取引所は、東京証券取引所，大阪証券取引所など、異なる地点に複数の取引所が存在する。取引所システム１は、株券などの証券取引を行うためのコンピュータシステムである。
【００１４】
各証券取引所に配置された取引所システム１と通信サーバ３とは専用線または汎用のデータ通信回線などのネットワーク２で接続されている。通信サーバ３とクライアント４ａ，４ｂとはローカルエリアネットワーク（ＬＡＮ）などのネットワーク５で接続されている。
【００１５】
取引所システム１は、相場情報（電文）を流すデータ供給元、つまりデータソースとして位置付けられる。
【００１６】
通信サーバ３は、サーバコンピュータであり、取引所システム１から受信した相場情報（電文）をネットワーク５に接続された、ユーザがログインしている全てのクライアント４ａ，４ｂへ送信（配信）する。
【００１７】
クライアント４ａ，４ｂは、ユーザが使用する画面を表示するモニタ及び指示を入力するための入力部などを備えた端末であり、通信サーバ３から配信された相場情報（電文）を受信し表示する。
【００１８】
図２に示すように、通信サーバ３は、操作部２１、メモリ２２、ハードディスク装置２３、ディスプレイ２４、通信インターフェース２５（以下「通信Ｉ／Ｆ２５」と称す）、ＣＰＵ２６などのハードウェアを備えている。
【００１９】
操作部２１は、証券取引管理ソフトウェアのメンテナンス時に使用する例えばキーボートおよびマウスなどの指示入力部である。
【００２０】
ハードディスク装置２３には、オペレーティングシステム（ＯＳ）やアプリケーションソフトウェアなどのプログラムが記憶（インストール）されており、コンピュータの起動と共にＣＰＵ２６がこれらプログラムをメモリ２２に読み込み、処理を実行する。
【００２１】
メモリ２２には、ＯＳやアプリケーションソフトウェアなどのプログラムが読み込まれてＣＰＵ２６により処理が実行される。ディスプレイ２４は、ＯＳやアプリケーションソフトウェアの画面を表示する。
【００２２】
通信Ｉ／Ｆ２５は、クライアント４ａ，４ｂとＬＡＮ５を通じて電文のやりとりを行う。ＣＰＵ２６は、上記各部を統括的に制御する。
【００２３】
通信サーバ３のメモリ２２上で動作するアプリケーションソフトウェアは、図３に示すように、データ受信部３１、送信スレッド３２ａ，３２ｂ…、電文キュー３３ａ，３３ｂ…、スレッド管理部３４、スレッド管理テーブル３５、乖離判定テーブル３６、スレッド制御部３７などとして機能する。
【００２４】
データ受信部３１は、取引所システム１よりネットワーク５を通じて配信されてくる電文を受信し、ユーザがログインし動作中のクライアント４ａ，４ｂに対応する送信スレッド３２ａ，３２ｂ…の数だけ電文を複製（コピー）し、個々の送信スレッド３２ａ，３２ｂ…が持つ電文キュー３３ａ，３３ｂ…に保持（記憶）する。すなわち、データ受信部３１は、データ供給元のコンピュータから受信した電文を複数の送信スレッド３２ａ，３２ｂ…に設けられた電文キューに記憶するためのデータ受信手段として機能する。
【００２５】
送信スレッド３２ａ，３２ｂ…は、対応する電文キュー３３ａ，３３ｂ…から電文を取り出し、対応するクライアント４ａ，４ｂに送信する。１つの送信スレッドは、１つの電文キューを持つ。例えば送信スレッド３２ａは電文キュー３３ａを持つ。送信スレッド３２ｂは電文キュー３３ｂを持つ。すなわち、送信スレッド３２ａ，３２ｂ…は、電文キューを持ち、この電文キューに記憶された電文を対応するクライアント４ａ，４ｂに送信するための複数の電文送信手段として機能する。
【００２６】
電文キュー３３ａ，３３ｂ…は、データ受信部３１と送信スレッド３２ａ，３２ｂ…間で電文を受け渡すためのキュー（一時記憶領域）であり、先入れ先出しでアクセスする。
【００２７】
スレッド管理部３４は、スレッド管理テーブル３５を用いて各スレッド３２ａ，３２ｂ…の動作状態とそれぞれの電文キュー３３ａ，３３ｂ…に保持されている電文件数と待ち時間とを監視し、乖離判定テーブル３６を参照して電文件数が乖離率閾値から乖離している送信スレッド３２ａ，３２ｂ…、つまり電文件数が全体の平均値よりも多い送信スレッドに対して待ち時間を、スレッド管理テーブル３５に設定する。すなわち、スレッド管理部３４は、各電文キューに記憶されている送信待ちの電文の件数を検出する管理手段として機能する。
【００２８】
スレッド制御部３７は、送信スレッド３２ａ，３２ｂ…毎の電文の送信件数をカウントし、スレッド管理テーブル３５に記録すると共に、同テーブル３５に設定された待ち時間を該当送信スレッド３２ａ，３２ｂ…に与えることで、送信スレッドどうしでデータ送信の差が小さくなるよう各送信スレッド３２ａ，３２ｂ…に働きかける。
【００２９】
スレッド制御部３７は、スレッド管理部３４により検出された送信待ちの全電文件数から、他よりも多く電文を送信しようとする送信スレッドに対して待ち時間を与えて電文の送信を抑制する。すなわち、スレッド制御部３７は、スレッド管理部３４が検出した送信待ちの電文の件数に基づき、複数の送信スレッド３２ａ，３２ｂ…に待ち時間を与えて電文の送信を抑制させる制御手段として機能する。
【００３０】
スレッド制御部３７は、個々の送信スレッド３２ａ，３２ｂ…の電文件数が全体の電文件数の平均値からどれだけ乖離しているかを示す乖離値である乖離率が、予め乖離判定テーブル３６に設定された乖離率閾値を超えた場合に待ち時間を与える。
【００３１】
スレッド制御部３７は、乖離率閾値を超えた乖離率を持つ送信スレッド３２ａに対して、乖離率に応じて待ち時間を与える。この場合に待ち時間を求める計算式は（乖離率−１）×１０００ｍｓｅｃなどである。
【００３２】
図４に示すように、乖離判定テーブル３６には、乖離率閾値と待ち時間とが対応して記憶されている。乖離率閾値としては、例えば１．２倍（２０％）以下、１．２倍（２０％）を越えるなどの閾値が設定されており、実際の乖離率が乖離率閾値１．２倍（２０％）以下の場合は、待ち時間は「０」であり、実際の乖離率が乖離率閾値１．２倍（２０％）を越えた場合は、待ち時間は（乖離率−１）×１０００ｍｓｅｃなどで算出される値になる。
【００３３】
図５に示すように、スレッド管理テーブル３５は、送信スレッド３２ａ，３２ｂ…の固有情報であるスレッドＩＤに関連させて規定の間隔の中（一定時間内）の処理件数と待ち時間とが設定されるテーブルである。
【００３４】
この例では、送信スレッド３２ａのスレッドＩＤを「ｘｘ３２ａ」とし、送信スレッド３２ｂのスレッドＩＤを「ｘｘ３２ｂ」とし、送信スレッド３２ｃ（図示せず）のスレッドＩＤを「ｘｘ３２ｃ」とし、「ｘｘ３２ａ」の処理件数が１１０００件、「ｘｘ３２ｂ」の処理件数が８５０件、「ｘｘ３２ｃ」の処理件数が７５０件とする。
【００３５】
この場合、３つのスレッドＩＤの平均処理件数は（１１００＋８５０＋７５０）／３＝９００件であり、この数値を平均値とすると、それぞれの乖離率は１１００／９００＝「１．２２」、８５０／９００＝「０．９４」、７５０／９００＝「０．８３」となる。
【００３６】
乖離判定テーブル３６の乖離率閾値（２０%）と比較して、平均値から＋２０％以上乖離しているのは、「ｘｘ３２ａ」の処理件数であり、この場合の計算式［（乖離率−１）×１０００ｍｓｅｃ］に「ｘｘ３２ａ」の乖離率「１．２２」を代入すると、待ち時間は２２０ｍｓｅｃとなり、この値がスレッド管理テーブル３５の「ｘｘ３２ａ」の待ち時間の欄に設定される。
【００３７】
以下、図６乃至図８を参照してこの証券取引システムの動作を説明する。図６はデータ受信部３１の動作を示すフローチャートである。図７は送信スレッドの動作を示すフローチャートである。図８はスレッド制御部３７の動作を示すフローチャートである。
この証券取引システムでは、取引所システム１は、相場情報を所定時間毎に配信している。
【００３８】
通信サーバ３の動作を図６に示したフローチャートに基づいて説明する。通信サーバ３では、その相場情報をデータ受信部３１が受信する（図６のステップＳ１０１）。データ受信部３１は、相場情報を受信したことをトリガにしてスレッド管理部３４に対して、送信対象スレッド数の取得要求を行う。
【００３９】
この要求を受けたスレッド管理部３４は、ユーザがログインしているクライアント４ａ，４ｂに対応して起動（存在）し動作している送信スレッド３２ａ，３２ｂ…を検出し、スレッド管理テーブル３５に登録すると共に、送信スレッド３２ａ，３２ｂ…の数をデータ受信部３１へ返す。
【００４０】
データ受信部３１は、動作している送信スレッド３２ａ，３２ｂ…の数をスレッド管理部３４から取得し（ステップＳ１０２）、受信した電文を送信スレッド３２ａ，３２ｂ…毎の電文キュー３３ａ，３３ｂ…にそれぞれ書込む（ステップＳ１０４）。
【００４１】
ステップＳ１０４の書込み処理をスレッド数分繰り返し（ステップＳ１０３〜ステップＳ１０５）、全ての電文キュー３３ａ，３３ｂ…への電文の書込みが終了すると、データ受信部３１は、書込み終了を通知するコマンド（イベント通知）をスレッド管理部３４と送信スレッド３２ａ，３２ｂ…へ発行する（ステップＳ１０６）。
【００４２】
送信スレッド３２ａ，３２ｂ…は、データ受信部３１からイベント通知を受信したことをトリガにして、ＣＰＵ２６の使用時間が割り当てられると、対応する電文キュー３３ａ，３３ｂ…に保持されている電文の送信動作を行う。
【００４３】
次に、図７を用いて送信スレッドの動作を説明する。例えば送信スレッド３２ａなどは、まずスレッド管理テーブル３５から自己のスレッドＩＤの待ち時間を読出して（ステップＳ２０１）、待ち時間の有無をチェック（確認）する（ステップＳ２０２）。
【００４４】
この確認の結果、待ち時間がある場合（ステップＳ２０２のＹｅｓ）、得られた待ち時間分待機した後（ステップＳ２０３）、ＣＰＵ２６の使用時間が割り当てられると、該当電文キュー３３ａから電文を読出す（ステップＳ２０４）。
【００４５】
一方、確認の結果、待ち時間が「０」の場合、つまりステップＳ２０２の判定処理で待ち時間なし場合（ステップＳ２０２のＮｏ）、送信スレッド３２ａは、待機することなくＣＰＵ２６の使用時間が割り当てられると、対応する電文キュー３３ａから電文を読出す（ステップＳ２０４）。
【００４６】
そして、送信スレッド３２ａは、対応付けられているクライアント４ａに対して、読み出した１件の電文を送信する（ステップＳ２０５）。
【００４７】
ここで、１件の電文の送信に成功すると（ステップＳ２０６のＹｅｓ）、送信スレッド３２ａは、電文キュー３３ａに保持されている送信待ちの電文の有無をチェックし、送信待ちの電文があれば（ステップＳ２０７のＹｅｓ）、規定の回数まで、または電文件数が規定の回数以下の場合は電文がなくなるまで、Ｓ２０５の電文送信処理を繰り返す（ステップＳ２０７）。
【００４８】
一方、１件の電文の送信に失敗すると（ステップＳ２０６のＮｏ）、送信スレッド３２ａは、同じ電文の再送（リトライ）を規定回数行う（ステップＳ２０８）。
【００４９】
このようにして電文を送信した後、送信スレッド３２ａは、送信済み電文件数をスレッド制御部３７へ通知する（ステップＳ２０９）。なおここでは、送信スレッド３２ａの動作について説明したが、他の送信スレッド３２ｂについても同様である。
【００５０】
次に、図８を用いてスレッド制御部３７の動作を説明する。スレッド制御部３７は、各送信スレッド３２ａ，３２ｂ…から送信済み電文件数を受け取ると、送信スレッド３２ａ，３２ｂ…の送信済み電文件数の平均件数（平均値）を計算する（ステップＳ３０１）。
【００５１】
すなわち、各送信スレッド３２ａ，３２ｂ…は、クライアント４ａ，４ｂに対して送信した電文の件数をカウントしてスレッド管理テーブル３５に記憶し、スレッド制御部３７は、カウントされた電文件数（数量）から複数のスレッド３２ａ，３２ｂ…全体の送信済み電文件数の平均値（以下「平均値」と称す）を求める。
【００５２】
平均値以外に偏差値を求めても良い。すなわち、平均値は、現在存在している複数の送信スレッドの送信処理量を示す一定の基準値と言える。
【００５３】
そして、スレッド制御部３７は、求めた平均値からの乖離率（何倍かまたは何%か）を算出する（ステップＳ３０２）。
【００５４】
なお、スレッド制御部３７が平均値を算出するタイミングは、上記のように送信済み電文件数を受け取ったとき以外に、例えばタイマによる計時を行い、タイマが所定時間おきにタイムアップしたとき、としても良い。
【００５５】
乖離率を算出後、スレッド制御部３７は、求めた乖離率と乖離判定テーブル３６の乖離率閾値とを比較して、乖離率閾値以内か、乖離率閾値を越えているかを判定する（ステップＳ３０３）。
【００５６】
この判定の結果、求めた乖離率が乖離率閾値以内の場合（ステップＳ３０３のＮｏ）、スレッド制御部３７は、待ち時間を「０」に設定する（ステップＳ３０４）。
【００５７】
また、判定の結果、求めた乖離率が乖離率閾値を越えた場合（ステップＳ３０３のＹｅｓ）、スレッド制御部３７は、乖離判定テーブル３６の式［乖離率−１）×１０００ｍｓｅｃ］を用いて、乖離率に応じた待ち時間を算出する（ステップＳ３０５）。
【００５８】
そして、スレッド制御部３７は、その待ち時間をスレッド管理テーブル３５に保存する（ステップＳ３０６）。
【００５９】
スレッド制御部３７は、各スレッド数分行ったか否かを判定し（ステップＳ３０７）、スレッド数分行っていなかった場合は、Ｓ３０２に戻り処理を繰り返す。スレッド数分行った場合は、処理を終了する。
【００６０】
すなわち、スレッド制御部３７は、算出した平均値とそれぞれの送信スレッド３２ａ，３２ｂ…の送信件数とを用いて送信件数が全体と比較して比較的多い送信スレッド３２ａに対して、その乖離率に比例した待ち時間を戻り値に含ませて指示（図中：抑制）を与える。なお、最大いくつのスレッドを抑制するかは、予めメモリ２２に記憶しておいた設定ファイルで決めるものとする。
【００６１】
設定ファイルの中には、抑制するスレッドの最小数，最大数，いくつのクライアントにつき１スレッド抑制するかの３項目を設定し、クライアント数によって抑制するスレッド数を動的に変化させる。
【００６２】
スレッド制御部３７が待ち時間を得る方法にはいくつかの方法がある。例えばタイマで一定時間毎に流量計測を行う方法と、送信スレッドから能動的に待ち時間を通知する方法との２通りがある。送信スレッドから能動的に待ち時間を通知する方法としては、図７のタイミングＡとタイミングＢのときに待ち時間の計算を一度に行い、タイミングＢでの通知に対する戻り値（応答）に待ち時間を含ませてスレッド制御部３７に通知する。
【００６３】
このようにこの実施形態の証券取引システムによれば、通信サーバ３において送信スレッド３２ａ，３２ｂ…の状態（電文キュー３３ａ，３３ｂ…への電文の書込み件数とそれぞれの電文キュー３３ａ，３３ｂ…から電文が送信されるまでの待ち時間）をスレッド管理テーブル３５で管理する一方、乖離判定テーブル３６にて送信スレッド３２ａ，３２ｂ…の動作を制御（電文の送信件数が、送信スレッド全体の平均値からの乖離幅が比較的大きい送信スレッドに対して待ち時間を与えて電文の送信を抑制するよう制御）することで、ログイン中の全てのクライアントにほぼ均等の時間でデータが届くようにできる。
【００６４】
すなわち、証券取引の際に時々刻々と変化する相場情報などの電文が複数のクライアントへ到達する時間を平均化でき、相場情報を複数のクライアントへ公平に配信することができる。
【００６５】
また、株の売買が急増したときの処理の集中を避けることで、クライアント側の受信バッファやソケットバッファの溢れ、などの問題を引き起こし難くなる。
【００６６】
なお、本願発明は、上記実施形態のみに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形してもよい。また、上記実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の発明を構成できる。
【００６７】
例えば、上記実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００６８】
【図１】本発明の一実施形態の証券取引システムの構成を示す図である。
【図２】通信サーバのハードウェア構成を示す図である。
【図３】通信サーバのアプリケーションソフトウェアの機能構成を示す図である。
【図４】乖離判定テーブルを示す図である。
【図５】スレッド管理テーブルを示す図である。
【図６】データ受信部の動作を示すフローチャートである。
【図７】送信スレッドの動作を示すフローチャートである。
【図８】スレッド制御部の動作を示すフローチャートである。
【符号の説明】
【００６９】
１…取引所システム、２，５…ネットワーク、４ａ，４ｂ…クライアント、３…通信サーバ、２１…操作部、２２…メモリ、２３…ハードディスク装置、２４…ディスプレイ、２５…通信インターフェース（通信Ｉ／Ｆ）、２６…乖離判定テーブル、３１…データ受信部、３２ａ，３２ｂ…送信スレッド、３３ａ，３３ｂ…電文キュー、３４…スレッド管理部、３５…スレッド管理テーブル、３６…乖離判定テーブル、３７…スレッド制御部。
【図１】
2010067052.tif 000003
【図２】
2010067052.tif 000004
【図３】
2010067052.tif 000005
【図４】
2010067052.tif 000006
【図５】
2010067052.tif 000007
【図６】
2010067052.tif 000008
【図７】
2010067052.tif 000009
【図８】
2010067052.tif 000010