IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッドの特許一覧 ▶ シャンハイ シャオドゥ テクノロジー カンパニー リミテッドの特許一覧

特許7112919スマート装置のタスク処理方法および装置
<>
  • 特許-スマート装置のタスク処理方法および装置 図1
  • 特許-スマート装置のタスク処理方法および装置 図2
  • 特許-スマート装置のタスク処理方法および装置 図3
  • 特許-スマート装置のタスク処理方法および装置 図4
  • 特許-スマート装置のタスク処理方法および装置 図5
  • 特許-スマート装置のタスク処理方法および装置 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-27
(45)【発行日】2022-08-04
(54)【発明の名称】スマート装置のタスク処理方法および装置
(51)【国際特許分類】
   G06F 9/48 20060101AFI20220728BHJP
【FI】
G06F9/48 300C
【請求項の数】 11
【外国語出願】
(21)【出願番号】P 2018174147
(22)【出願日】2018-09-18
(65)【公開番号】P2019102064
(43)【公開日】2019-06-24
【審査請求日】2018-10-18
【審判番号】
【審判請求日】2021-12-24
(31)【優先権主張番号】201711242775.X
(32)【優先日】2017-11-30
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】512015127
【氏名又は名称】バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド
(73)【特許権者】
【識別番号】521235408
【氏名又は名称】シャンハイ シャオドゥ テクノロジー カンパニー リミテッド
(74)【代理人】
【識別番号】110001508
【氏名又は名称】弁理士法人 津国
(72)【発明者】
【氏名】チャン・シャンタン
(72)【発明者】
【氏名】シェン・チャン
【合議体】
【審判長】篠原 功一
【審判官】新田 亮
【審判官】須田 勝巳
(56)【参考文献】
【文献】特表2014-518409(JP,A)
【文献】特表2013-500526(JP,A)
【文献】特開2011-065645(JP,A)
【文献】特開2005-276175(JP,A)
【文献】特開平9-265409(JP,A)
【文献】平野 敬幸、BANCS接続システム(3) ーホストオンライン処理に要求される信頼性・パフォーマンスの実現、技報 UNISYS TECHNOLOGY REVIEW、日本ユニシス株式会社、2002年11月30日、第22巻、第3号、42-53ページ
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/455 - 9/54
(57)【特許請求の範囲】
【請求項1】
スマート装置のタスク処理方法であって、
所定のデータフォーマットのタスク記述情報を含むサービス情報をサーバから受信するステップと、
前記所定のデータフォーマットに基づいて、前記サービス情報を解析して、現在では前記スマート装置のプロセッサによって処理される処理待ちタスクを決定するステップと、
前記処理待ちタスクを処理待ちタスクキューに配分するステップと、
前記処理待ちタスクキューの種類に応じて、当該処理待ちタスクキューにおける処理待ちタスクを処理するステップと、を含み、
処理待ちタスクを処理するステップにおいて、前記処理待ちタスクキューの種類が並行タスクキューであることに応答して、前記処理待ちタスクキューにおける処理待ちタスクを並行して処理するための、所定の数のスレッドを有する第1のスレッドプールを確立することと、前記処理待ちタスクキューにおける処理待ちタスクの数及びスレッドの待機時間に基づいて、第1のスレッドプールにおけるスレッドの数を動的に調整することとを含み、前記動的に調整することは、第1のスレッドプールにおいて待機時間が所定の時間閾値より長いスレッドを消除することを含む、
ことを特徴とする方法。
【請求項2】
前記処理待ちタスクキューは並行タスクキューであり、
前記処理待ちタスクキューにおける処理待ちタスクを処理するステップは、
前記処理待ちタスクキューが空白でないとともに、第1のスレッドプールにアイドルスレッドが存在することに応じて、前記処理待ちタスクキューの少なくとも一部の処理待ちタスクを前記第1のスレッドプールに追加するステップであって、前記少なくとも一部の処理待ちタスクにおける処理待ちタスクの数が、前記第1のスレッドプールにおけるアイドルスレッドの数以下であるステップと、
前記少なくとも一部の処理待ちタスクが実行終了した後に、前記少なくとも一部の処理待ちタスクを前記処理待ちタスクキューから除去するステップと、
を含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記処理待ちタスクキューはシリアルタスクキューであり、
前記処理待ちタスクキューにおける処理待ちタスクを処理するステップは、
処理中の処理待ちタスクが存在しないとともに、前記シリアルタスクキューが空白でないことに応じて、前記シリアルタスクキューの先頭に位置する処理待ちタスクを第1のタスクとして、シリアル処理ステップを実行するステップであって、前記シリアル処理ステップは、前記第1のタスクを実行した後に、前記第1のタスクを前記シリアルタスクキューから除去するステップである、ステップと、
前記シリアルタスクキューが空白でないことに応じて、前記シリアルタスクキューの先頭に位置する処理待ちタスクを前記第1のタスクとして、前記シリアル処理ステップを継続する、ステップと、
を含むことを特徴とする請求項1に記載の方法。
【請求項4】
前記サービス情報は、前記スマート装置から受信されたイベント情報に基づいて前記サーバによって生成され、前記イベント情報は、前記スマート装置の音声入力情報と、処理待ちタスクを実行する期間の前記スマート装置の状態変化情報とのうち少なくとも1つを含む、
ことを特徴とする請求項1に記載の方法。
【請求項5】
前記イベント情報は、
前記イベント情報に基づいてアップロード待ちイベントを生成するステップと、
前記アップロード待ちイベントをアップロード待ちイベントキューに配分するステップと、
前記アップロード待ちイベントキューにおけるアップロード待ちイベントを所定のデータフォーマットで前記サーバに送信するステップと、
によって、前記サーバに送信される、
ことを特徴とする請求項4に記載の方法。
【請求項6】
前記アップロード待ちイベントキューにおけるアップロード待ちイベントを所定のデータフォーマットで前記サーバに送信するステップは、
前記アップロード待ちイベントキューが空白でないとともに、第2のスレッドプールにアイドルスレッドが存在することに応じて、前記アップロード待ちイベントキューにおける少なくとも一部のアップロード待ちイベントを前記第2のスレッドプールに追加するステップであって、前記少なくとも一部のアップロード待ちイベントにおけるアップロード待ちイベントの数が、前記第2のスレッドプールにおけるアイドルスレッドの数以下である、ステップと、
前記少なくとも一部のアップロード待ちイベントが実行完了した後に、前記少なくとも一部のアップロード待ちイベントを、アップロード待ちイベントキューから除去するステップと、
を含むことを特徴とする請求項5に記載の方法。
【請求項7】
前記スマート装置と前記サーバとの間に、再使用可能な通信リンクが存在する、
ことを特徴とする請求項1乃至請求項6のいずれか一項に記載の方法。
【請求項8】
スマート装置のタスク処理装置であって、
所定のデータフォーマットのタスク記述情報を含むサービス情報をサーバから受信する受信ユニットと、
前記所定のデータフォーマットに基づいて、前記サービス情報を解析して、現在では前記タスク処理装置によって処理される処理待ちタスクを決定する解析ユニットと、
前記処理待ちタスクを処理待ちタスクキューに配分する配分ユニットと、
前記処理待ちタスクキューの種類に応じて、当該処理待ちタスクキューにおける処理待ちタスクを処理する処理ユニットと、を含み、
前記処理ユニットは、さらに、前記処理待ちタスクキューの種類が並行タスクキューであることに応答して、前記処理待ちタスクキューにおける処理待ちタスクを並行して処理するための、所定の数のスレッドを有する第1のスレッドプールを確立し、前記処理待ちタスクキューにおける処理待ちタスクの数及びスレッドの待機時間に基づいて、第1のスレッドプールにおけるスレッドの数を動的に調整するように構成され、前記動的に調整することは、第1のスレッドプールにおいて待機時間が所定の時間閾値より長いスレッドを消除することを含む、
ことを特徴とする装置。
【請求項9】
一つ又は複数のプロセッサと、
一つ又は複数のプログラムが記憶されている記憶装置と、を備え、
前記一つ又は複数のプログラムが前記一つ又は複数のプロセッサにより実行されると、前記一つ又は複数のプロセッサに請求項1乃至請求項7のいずれか一項に記載の方法を実現させることを特徴とする機器。
【請求項10】
コンピュータプログラムが記憶されており、当該プログラムがプロセッサにより実行されると、請求項1乃至請求項7のいずれか一項に記載の方法を実現させることを特徴とするコンピュータ読取可能な記憶媒体。
【請求項11】
プロセッサにより実行されると、請求項1乃至請求項7のいずれか一項に記載の方法を実現させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータの技術分野に関し、具体的にインターネットの技術分野に関し、より詳細に、スマート装置のタスク処理方法および装置に関する。
【背景技術】
【0002】
人工知能の発展により、スマート装置は、ユーザの音声入力を取得してサーバにアップロードし、サーバから返されたコマンドを受信して、例えば装置制御、情報クエリ、スケジュール管理などのコマンドに対応する操作を実行することができる。これにより、自然言語対話によるユーザとモバイル機器との対話を実現することができる。
【発明の開示】
【発明が解決しようとする課題】
【0003】
本発明は、スマート装置のタスク処理方法および装置を提案する。
【0004】
第一の局面として、本発明は、スマート装置のタスク処理方法を提供する。上記スマート装置のタスク処理方法は、所定のデータフォーマットのタスク記述情報を含むサービス情報をサーバから受信するステップと、上記所定のデータフォーマットに基づいて、上記サービス情報を解析して処理待ちタスクを決定するステップと、上記処理待ちタスクを処理待ちタスクキューに配分するステップと、上記処理待ちタスクキューにおける処理待ちタスクを処理するステップと、を含む。
【0005】
本発明の一部の実施形態において、上記処理待ちタスクキューは並行タスクキューであり、上記処理待ちタスクキューにおける処理待ちタスクを処理するステップは、上記処理待ちタスクキューが空白でないとともに、第1のスレッドプールにアイドルスレッドが存在することに応じて、上記処理待ちタスクキューの少なくとも一部の処理待ちタスクを上記第1のスレッドプールに追加するステップであって、上記少なくとも一部の処理待ちタスクにおける処理待ちタスクの数が、上記第1のスレッドプールにおけるアイドルスレッドの数以下であるステップと、上記少なくとも一部の処理待ちタスクが実行終了した後に、上記少なくとも一部の処理待ちタスクを上記処理待ちタスクキューから除去するステップと、を含む。
【0006】
本発明の一部の実施形態において、上記処理待ちタスクキューはシリアルタスクキューであり、上記処理待ちタスクキューにおける処理待ちタスクを処理するステップは、処理中の処理待ちタスクが存在しないとともに、上記シリアルタスクキューが空白でないことに応じて、上記シリアルタスクキューの先頭に位置する処理待ちタスクを第1のタスクとして、シリアル処理ステップを実行するステップであって、上記シリアル処理ステップは、上記第1のタスクを実行した後に、上記第1のタスクを上記シリアルタスクキューから除去するステップである、ステップと、上記シリアルタスクキューが空白でないことに応じて、上記シリアルタスクキューの先頭に位置する上記処理待ちタスクを上記第1のタスクとし、上記シリアル処理ステップを継続する、ステップと、を含む。
【0007】
本発明の一部の実施形態において、上記サービス情報は、上記スマート装置から受信されたイベント情報に基づいて上記サーバによって生成され、上記イベント情報は、上記スマート装置の音声入力情報と、処理待ちタスクを実行する期間の上記スマート装置の状態変化情報とのうち少なくとも1つを含む。
【0008】
本発明の一部の実施形態において、上記イベント情報は、上記イベント情報に基づいてアップロード待ちイベントを生成するステップと、上記アップロード待ちイベントをアップロード待ちイベントキューに配分するステップと、上記アップロード待ちイベントキューにおけるアップロード待ちイベントを所定のデータフォーマットで上記サーバに送信するステップと、によって上記サーバに送信される。
【0009】
本発明の一部の実施形態において、上記アップロード待ちイベントキューにおけるアップロード待ちイベントを所定のデータフォーマットで上記サーバに送信するステップは、上記アップロード待ちイベントキューが空白でないとともに、第2のスレッドプールにアイドルスレッドが存在することに応じて、上記アップロード待ちイベントキューにおける少なくとも一部のアップロード待ちイベントを上記第2のスレッドプールに追加するステップであって、上記少なくとも一部のアップロード待ちイベントにおけるアップロード待ちイベントの数が、上記第2のスレッドプールにおけるアイドルスレッドの数以下である、ステップと、上記少なくとも一部のアップロード待ちイベントが実行完了した後に、上記少なくとも一部のアップロード待ちイベントを、アップロード待ちイベントキューから除去するステップとを含む。
【0010】
本発明の一部の実施形態において、上記スマート装置と上記サーバとの間に、再使用可能な通信リンクが存在する。
【0011】
第二の局面として、本発明は、スマート装置のタスク処理装置を提供する。上記スマート装置のタスク処理装置は、所定のデータフォーマットのタスク記述情報を含むサービス情報をサーバから受信する受信ユニットと、上記所定のデータフォーマットに基づいて、上記サービス情報を解析して処理待ちタスクを決定する解析ユニットと、上記処理待ちタスクを処理待ちタスクキューに配分する配分ユニットと、上記処理待ちタスクキューにおける処理待ちタスクを処理する処理ユニットと、を含む。
【0012】
本発明の一部の実施形態において、上記処理待ちタスクキューは並行タスクキューであり、処理ユニットは、上記処理待ちタスクキューが空白でないとともに、第1のスレッドプールにアイドルスレッドが存在することに応じて、上記処理待ちタスクキューの少なくとも一部の処理待ちタスクを上記第1のスレッドプールに追加するユニットであって、上記少なくとも一部の処理待ちタスクにおける処理待ちタスクの数が、上記第1のスレッドプールにおけるアイドルスレッドの数以下である並行実行ユニットと、上記少なくとも一部の処理待ちタスクが実行終了した後に、上記少なくとも一部の処理待ちタスクを上記処理待ちタスクキューから除去する並行除去ユニットと、を含む。
【0013】
本発明の一部の実施形態において、上記処理待ちタスクキューはシリアルタスクキューであり、処理ユニットは、処理中の処理待ちタスクが存在しないとともに、上記シリアルタスクキューが空白でないことに応じて、上記シリアルタスクキューの先頭に位置する処理待ちタスクを第1のタスクとして、シリアル処理ステップを実行するユニットであって、上記シリアル処理ステップは、上記第1のタスクを実行した後に、上記第1のタスクを上記シリアルタスクキューから除去する、第1のシリアル実行ユニットと、上記シリアルタスクキューが空白でないことに応じて、上記シリアルタスクキューの先頭に位置する上記処理待ちタスクを上記第1のタスクとして、上記シリアル処理ステップを継続する、第2のシリアル実行ユニットと、を含む。
【0014】
本発明の一部の実施形態において、上記サービス情報は、上記スマート装置から受信されたイベント情報に基づいて上記サーバによって生成され、上記イベント情報は、上記スマート装置の音声入力情報と、処理待ちタスクを実行する期間の上記スマート装置の状態変化情報とのうち少なくとも1つを含む。
【0015】
本発明の一部の実施形態において、上記装置は、イベント情報をサーバに送信するように構成されているイベントユニットをさらに含む。
【0016】
本発明の一部の実施形態において、イベントユニットは、上記イベント情報に基づいてアップロード待ちイベントを生成するイベント生成ユニットと、上記アップロード待ちイベントをアップロード待ちイベントキューに配分するイベント配分ユニットと、上記アップロード待ちイベントキューにおけるアップロード待ちイベントを所定のデータフォーマットで上記サーバに送信するアップロードユニットとを含む。
【0017】
本発明の一部の実施形態において、アップロードユニットは、上記アップロード待ちイベントキューが空白でないとともに、第2のスレッドプールにアイドルスレッドが存在することに応じて、上記アップロード待ちイベントキューにおける少なくとも一部のアップロード待ちイベントを上記第2のスレッドプールに追加するユニットであって、上記少なくとも一部のアップロード待ちイベントにおけるアップロード待ちイベントの数が、上記第2のスレッドプールにおけるアイドルスレッドの数以下である、実行サブユニットと、上記少なくとも一部のアップロード待ちイベントが実行完了した後に、上記少なくとも一部のアップロード待ちイベントを、アップロード待ちイベントキューから除去する除去サブユニットとを含む。
【0018】
本発明の一部の実施形態において、上記スマート装置と上記サーバとの間に、再使用可能な通信リンクが存在する。
【0019】
本発明によって提供されるスマート装置のタスク処理方法及び装置は、タスク記述情報を含むサービス情報を受信した後、処理待ちタスクキューに配分し、その後に、処理待ちタスクキューにおける処理待ちタスクを処理することにより、処理待ちタスクの処理効率を向上させることができる。
【図面の簡単な説明】
【0020】
以下の図面を参照してなされた制限的でない実施形態に対する詳細的な説明により、本発明の他の特徴、目的及び利点はより明らかになる。
図1図1は、本発明が適用され得る例示的なシステムの構造図である。
図2図2は、本発明に係るスマート装置のタスク処理方法の一実施形態のプロセス図である。
図3図3は、本発明に係るスマート装置のタスク処理方法の適用シーンの概略図である。
図4図4は、本発明に係るスマート装置のタスク処理方法の別の実施形態のプロセス図である。
図5図5は、本発明に係るスマート装置のタスク処理装置の一実施形態の構造概略図である。
図6図6は、本発明の実施形態を実現するための装置に適用されるコンピュータシステムの構成模式図である。
【発明を実施するための最良の形態】
【0021】
以下、図面及び実施形態を参照しながら本発明をより詳細に説明する。理解すべきことは、ここで説明する具体的な実施形態は、当該発明を説明するものに過ぎず、当該発明を限定するものではない。ただし、説明の便宜上、図面には発明に関連する部分のみが示されている。
【0022】
なお、衝突しない場合、本発明の実施形態及び実施形態における特徴を相互に組み合せてもよい。以下、図面及び実施形態を参照しながら本発明を詳細に説明する。
【0023】
図1は、本発明が適用できるタスク処理方法またはタスク処理装置の実施形態の例示的なシステムアーキテクチャ100を示す。
【0024】
図1に示されたように、システムアーキテクチャ100は、端末装置101、102、103と、ネットワーク104と、サーバ105とを備えても良い。ネットワーク104は、端末装置101、102、103とサーバ105の間に通信リンクの媒体を提供する。ネットワーク104は、各種の接続タイプ、例えば有線、無線通信リンク又は光ファイバ、ケーブルなどを含んでも良い。
【0025】
ユーザは、端末装置101、102、103を使用してネットワーク104を介してサーバ105とインタラクションすることにより、メッセージなどを送受信することができる。端末装置101、102、103には、各種の通信クライアントアプリ、例えば音声補助型のアプリ、買物型のアプリ、検索型のアプリ、即時通信ツール、メールボックスクライアント、交際型のプラットフォームソフトウェアなどがインストールされても良い。
【0026】
端末装置101、102、103は、音声受信機能を有する各種の電子装置であっても良く、スマートフォーン、タブレット、電子書籍閲覧機、MP3プレーヤ(Moving Picture Experts Group Audio Layer III、ムービングピクチャエクスパーシグループオーディオレイヤー3)、MP4(Moving Picture Experts Group Audio Layer IV、ムービングピクチャエクスパーシグループオーディオレイヤー4)プレーヤ、ノードパソコン及びディスクトップコンピュータなどを含むが、それらに限定されない。
【0027】
サーバ105は、端末装置101、102、103との会話型インタラクションをサポートすることなどの、様々なサービスを提供するサーバである。 サーバ105は、受信した音声入力等のデータに対して解析処理を行い、解析処理結果に基づいて端末装置101、102、103にコマンドを送信することができる。
【0028】
説明すべきなのは、本発明の実施形態により提供される情報を抽出する方法は、一般的にサーバ105により実行される。それに応じて、情報を抽出する装置は一般的にサーバ105に設置される。説明すべきなのは、本発明の実施形態により提供される情報を抽出する方法は、ある場合に端末装置101、102、103により実行されても良い。
【0029】
理解すべきなのは、図1における端末装置、ネットワーク及びサーバの数は例示的なものに過ぎない。実現の必要に応じて、任意の数の端末装置、ネットワーク及びサーバを備えても良い。
【0030】
本発明に係るスマート装置のタスク処理方法の一実施形態のプロセス200を示す図2をさらに参照する。スマート装置におけるタスクの処理方法は、以下のステップを含む。
【0031】
ステップ201において、サーバによって送信された、所定のデータフォーマットのタスク記述情報を含むサービス情報を受信する。
本実施形態において、タスク処理方法が実行されるスマート装置(例えば、図1の端末装置)は、有線接続または無線接続によってサーバからサービス情報を受信することができ、サービス情報は、タスク記述情報を所定のフォーマットで含む。
【0032】
通常、スマート装置は、HTTP(HyperText Transfer Protocol)2.0に基づいてサービス情報を受信する。タスク記述情報は、JSON(JavaScript Object Notation、軽量データ交換フォーマット)フォーマットのテキスト情報であってもよい。
【0033】
サービス情報は、タスク記述情報を含むだけでなく、追加情報を含むこともできることを理解されたい。例えば、後述する処理待ちタスクが音楽再生などの音声を含む操作である場合、サービス(業務)情報は、バイナリ音声ストリーム情報をさらに含むことができる。
【0034】
ステップ202において、処理すべきタスクを決定するために、所定のデータフォーマットに基づいてサービス情報を解析する。
【0035】
本実施形態において、携帯機器(例えば、図1のサーバ)は、ステップ201で取得したサービス情報を所定のデータフォーマット(例えば、JSONフォーマット)に基づいて解析して、解析した装置記述情報を取得し、解析されたタスク記述情報に基づいて処理待ちタスクを生成する。
【0036】
タスク記述情報を含むサービス情報をJSONフォーマットで例を挙げて説明すると、まず、タスク記述情報中のタスク属性及び属性値(キー値対のフォーマットによりJSONテキスト内に存在する)を取得し、取得したタスク属性および属性値をパッケージ化して処理待ちタスクを取得することができる(例えば、オブジェクト指向プログラミングでは、処理待ちタスクはタスク類の具体的例であってもよい)。
【0037】
ステップ203において、処理待ちタスクを処理待ちタスクキューに配分する。
【0038】
本実施形態において、スマート装置のタスク処理方法が実行されるスマート装置は、少なくとも1つの処理待ちタスクキューを予め設定しておき、ステップ202で決定された処理待ちタスクを処理待ちタスクキューに配分する。例えば、処理待ちタスクは、処理待ちタスクの生成時刻に基づいて処理待ちタスクキューに配分され、例えば、最新に生成された処理待ちタスクを処理待ちタスクキューの後方(尾部)に配分し、または、処理待ちタスクの優先度に基づいて、処理待ちタスクを処理待ちタスクキューに配分することができる。例えば、優先度の低い処理待ちタスクを、処理待ちタスクキューの尾部に配分する。ここで、処理待ちタスクキューは、スマート装置のローカルメモリやリムーバブル記憶媒体などに記憶されてもよい。
【0039】
ステップ204において、処理待ちタスクキューにおける処理待ちタスクを処理する。
【0040】
本実施形態では、モバイル装置は、被処理装置の種類(例えば、並行タスクキューまたはシリアルタスクキュー)及び処理待ちタスクキューにおける処理待ちタスクの属性(例えば、生成時間や優先度)に基づいて、処理待ちタスクキューにおける処理待ちタスクを処理してもよく。
【0041】
本実施形態の一部の選択可能な実装形態では、処理待ちタスクキューは並行タスクキューであり、処理待ちタスクキューにおける処理待ちタスクを処理することは、上記処理待ちタスクキューが空白でないとともに、第1のスレッドプールにアイドルスレッドが存在することに応じて、上記処理待ちタスクキューの少なくとも一部の処理待ちタスクを上記第1のスレッドプールに追加するステップであって、上記少なくとも一部の処理待ちタスクにおける処理待ちタスクの数が、上記第1のスレッドプールにおけるアイドルスレッドの数以下であるステップと、上記少なくとも一部の処理待ちタスクが実行終了した後に、上記少なくとも一部の処理待ちタスクを上記処理待ちタスクキューから除去するステップと、を含む。
【0042】
具体的には、スマート装置には、所定の数(例えば、4つ)のスレッドを有する第1のスレッドプールを備えることができる。スマート装置は、処理されるタスクキューおよび第1のスレッドプールの状態を定期的にチェックする。処理待ちタスクキューが空白でない(つまり、少なくとも1つの処理待ちタスクが存在する)とともに第1のスレッドプールにアイドルスレッド(全スレッドまたは一部のスレッドが待機状態である)が存在する場合には、処理待ちタスクキューから少なくとも一部の処理待ちタスクを抽出して第1のスレッドプールに追加し、第1のスレッドプールマネージャによって処理待ちタスクの実行を制御する。ここで、当該少なくとも一部処理待ちタスクの数は、第1のスレッドプールにおけるアイドルスレッドの数以下である。例えば、4つのアイドルスレッドが存在する場合、1~4の処理待ちタスクを第1のスレッドプールに追加することができる。2つのアイドルスレッドが存在する場合には、1-2の処理待ちタスクを第1のスレッドプールに追加することができる。
【0043】
第1スレッドプールに追加された処理待ちタスク毎に対して、当該処理待ちタスクの実行が完了した後、処理待ちタスクを処理待ちタスクキューから除去する。
【0044】
第1スレッドプールが処理待ちタスクを同時(並行)に処理するように設定するこれにより、処理待ちタスクの処理効率を向上させる一方、多すぎる処理待ちタスクを同時に処理することによるスマート装置の実行圧力を軽減することができる。
【0045】
なお、第1スレッドプールにおけるスレッドは一定量のシステム資源を占有するので、第1スレッドプールにおけるスレッド数は、第1スレッドプールにおける処理待ちタスクの数及びスレッドの待機(閑)時間に基づいて動的に調整されてもよい。例えば、処理待ちタスクキューにおける処理待ちタスクの数がタスク数閾値より大きい場合には、第1スレッドプールにおけるスレッド数を増加させて処理効率を向上させることができ、スレッドの待機時間が時間閾値よりも長い場合、時間閾値よりも長い待機時間を有するスレッドは、システムオーバーヘッドを節約するために削除してもよい。
【0046】
本発明の実施形態の一部の選択可能な実装形態では、処理待ちタスクキューは、シリアルタスクキューであり、上記処理待ちタスクキューにおける上記処理待ちタスクを処理するステップは、処理中の処理待ちタスクが存在しないとともに、上記シリアルタスクキューが空白でないことに応じて、上記シリアルタスクキューの先頭に位置する処理待ちタスクを第1のタスクとし、シリアル処理ステップを実行するステップであって、上記シリアル処理ステップは、上記第1のタスクを実行した後に、上記第1のタスクを上記シリアルタスクキューから除去するステップである、ステップと、上記シリアルタスクキューが空白でないことに応じて、上記シリアルタスクキューの先頭に位置する上記処理待ちタスクを上記第1のタスクとし、上記シリアル処理ステップを継続する、ステップと、を含む。
【0047】
具体的には、処理待ちタスクキューがシリアルタスクキュー(つまり、シリアルモードで処理待ちタスクを実行する)である場合に、処理中の処理待ちタスクが存在しないとともに、処理待ちタスクキューが空白でないと、処理待ちタスクキューにおける処理待ちタスクの順番にしたがって、シリアルタスクキューの先頭に位置する処理待ちタスクを第1のタスクとして処理を行い、第1のタスクの実行が完了した後、第1のタスクをシリアルタスクキューから除去する。第1のタスクを除去した後でもシリアルタスクキューが空白でない場合は、続いてタスクキューの先頭の処理待ちタスクを実行し、当該過程を繰り返す。
【0048】
図3をさらに参照すると、図3は、本実施形態に係るスマート装置のタスク処理方法の応用シーン300の概略図である。図3の適用シーン300において、スマート装置302は、まず、サーバ301からサービス情報を受信し、その後、スマート装置302は、サービス情報における所定のフォーマットのタスク記述情報を解析して、処理待ちタスクを決定する。次に、処理待ちタスクキューに決定された処理待ちタスクを配分303(例えば、処理待ちタスクキュー303の尾部)、最後に、処理待ちタスクキュー303における処理待ちタスクを処理する。
【0049】
本発明の実施形態によるスマート装置のタスク処理方法は、処理待ちタスクキューに処理待ちタスクを配分して処理することにより、処理待ちタスクの処理効率を向上させることができる。
【0050】
さらに、図4を参照すると、スマート装置のタスク処理方法の他の実施形態のプロセス400が示されている。スマート装置のタスク処理方法のプロセス400は、以下のステップを含む。
【0051】
ステップ401において、サーバにから送信された、所定のデータフォーマットのタスク記述情報を含むサービス情報を受信する。
【0052】
本実施形態において、タスク処理方法が実行されるスマート装置(例えば、図1の端末装置)は、有線接続または無線接続によってサーバからサービス情報を受信することができ、サービス情報は、所定のフォーマットのタスク記述情報を含む。
【0053】
ステップ402において、処理待ちタスクを決定するために、所定のデータフォーマットに基づいてサービス情報を解析する。
【0054】
本実施形態では、モバイル機器(例えば、図1のサーバ)は、ステップ401で取得したサービス情報を所定のデータフォーマット(例えば、JSONフォーマット)に基づいて解析して、解析されたタスク記述情報を取得し、解析されたタスク記述情報に基づいて処理待ちタスクを生成する。
【0055】
ステップ403において、処理待ちタスクキューに処理待ちタスクキューを配分する。
【0056】
本実施形態では、タスク処理方法が実行されるスマート装置は、少なくとも1つの処理待ちタスクキューを予め構築し、ステップ402から決定された処理待ちタスクを処理待ちタスクキューに配分する。
【0057】
ステップ404において、処理待ちタスクキューにおける処理待ちタスクを処理する。
【0058】
本実施形態では、モバイル機器は、処理待ちタスクキューの種類(例えば、処理対象の並行タスクキューやシリアルto-タスクキュー)及び処理待ちタスクキューの属性(例えば、生成時刻や優先度)に基づいて、処理待ちタスクキューにおける処理待ちタスクを処理する。
【0059】
本実施形態では、図2の実施形態と比較すると、サービス情報は、スマート装置から受信されたイベント情報に基づいてサーバによって生成され、イベント情報は、スマート装置の音声入力情報または処理待ちタスクを実行する期間のスマート装置の状態変化情報のうちの少なくとも1つを含む。
【0060】
したがって、スマート装置のタスク処理方法のプロセス400は、以下のステップをさらに含む。
【0061】
ステップ405において、イベント情報に基づいてアップロード待ちイベントを生成する。
【0062】
本実施形態では、スマート装置は、ユーザの音声入力を受けて適切なイベント情報を生成することができ、または、処理待ちタスクを実行する際(例えば、処理待ちタスクが音楽再生であれば、音楽を再生し始めたとき)にもイベント情報を生成することができる。この場合、後続の処理のために、生成されたアップロード待ちイベントをパッケージ化してアップロード待ちイベントを生成することができる(例えば、オブジェクト指向プログラミングでは、アップロード待ちイベントは事件類の具体的実例である)。
【0063】
ステップ406において、アップロード待ちイベントをアップロード待ちイベントキューに配分する。
【0064】
本実施形態において、タスク処理方法が実行されるスマート装置は、少なくとも1つのアップロード待ちイベントキューを事前に構築して、ステップ405で生成されたアップロード待ちイベントをアップロード待ちイベントキューに配分することができる。例えば、アップロード待ちイベントを、アップロード待ちイベントの生成時刻に基づいてアップロード待ちイベントキューに配分することができ、例えば、最新に生成されたアップロード待ちイベントをアップロード待ちイベントキューの後方(アップロード待ちイベントキュー尾部)に配分することができる。または、アップロード待ちイベントを、アップロード待ちイベントの優先度に基づいてアップロード待ちイベントキューに配分することができ、例えば、優先度の低いアップロード待ちイベントをアップロード待ちイベントキューの尾部に配分することができる。ここで、アップロード待ちイベントキューは、スマート装置のローカルメモリまたはリムーバブル記憶媒体に記憶されてもよい。
【0065】
ステップ407において、アップロード待ちイベントキューにおけるアップロード待ちイベントを所定のデータフォーマットでサーバに送信する。
【0066】
本実施形態では、モバイル装置は、アップロード待ちイベントを、アップロード待ちイベントキューの種類(並行イベントキューまたはシリアルイベントキュー)及びアップロード待ちイベントキューの属性(例えば、生成時刻または優先度)に基づいて、所定のデータフォーマット(例えば、JSONフォーマット)でサーバにアップロードすることができる。
【0067】
実施形態の一部の選択可能な実装形態では、上記アップロード待ちイベントキューにおける上記アップロード待ちイベントを上記所定のデータフォーマットで上記サーバに送信するステップは、上記アップロード待ちイベントキューが空白でないとともに、第2のスレッドプールにアイドルスレッドが存在することに応じて、上記アップロード待ちイベントキューにおける少なくとも一部のアップロード待ちイベントを上記第2のスレッドプールに追加するステップであって、上記少なくとも一部のアップロード待ちイベントにおけるアップロード待ちイベントの数が、上記第2のスレッドプールにおけるアイドルスレッドの数以下である、ステップと、上記少なくとも一部のアップロード待ちイベントが実行完了した後に、上記少なくとも一部のアップロード待ちイベントを、アップロード待ちイベントキューから除去するステップとを含む。
【0068】
具体的には、スマート装置には、所定の数(例えば、2つ)のスレッドを有する第2のスレッドプールを備えることができる。スマート装置は、アップロード待ちイベントキューおよび第2のスレッドプールの状態を定期的にチェックする。アップロード待ちイベントキューが空白でない(つまり、少なくとも1つのアップロード待ちイベントが存在する)とともに第2のスレッドプールにアイドルスレッド(全スレッドまたは一部のスレッドが待機状態である)が存在する場合には、アップロード待ちイベントキューから少なくとも一部のアップロード待ちイベントを抽出して第2のスレッドプールに追加し、第2のスレッドプールマネージャによって処理待ちタスクの実行を制御する。ここで、当該少なくとも一部アップロード待ちイベントの数は、第2のスレッドプールにおけるアイドルスレッドの数以下である。例えば、2つのアイドルスレッドが存在する場合、1~2のアップロード待ちイベントを第2のスレッドプールに追加することができる。1つのアイドルスレッドが存在する場合には、1つのアップロード待ちイベントを第2のスレッドプールに追加することができる。
【0069】
理解すべきことは、第2のスレッドプールにおけるスレッドの数は1でもよく、第2のスレッドプールが1つのスレッドプールのみを含む場合、アップロード待ちイベントは実質的にシリアルモードでアップロードされる。アップロード待ちイベントがアップロードされた後で、次のアップロード待ちイベントが続いてアップロードされる。
【0070】
第2のスレッドプールに追加されたアップロード待ちイベント毎について、アップロード待ちイベントのアップロードが完了すると、アップロード待ちイベントをアップロード待ちイベントから除去する。
【0071】
第2のスレッドプールがアップロード待ちイベントを同時(並行)にアップロードするように設定するこれにより、アップロード効率を向上させる一方、多すぎるアップロード待ちイベントを同時にアップロードすることによるスマート装置の実行圧力を軽減することができる。
【0072】
なお、第2スレッドプールにおけるスレッドは一定量のシステム資源を占有するので、第2スレッドプールにおけるスレッド数は、第2スレッドプールにおけるアップロード待ちイベントの数及びスレッドの待機(閑)時間に基づいて動的に調整されてもよい。例えば、アップロード待ちイベントキューにおけるアップロード待ちイベントの数がイベント数閾値より大きい場合には、第2スレッドプールにおけるスレッド数を増加させて処理効率を向上させることができ、スレッドの待機時間が時間閾値よりも長い場合、時間閾値よりも長い待機時間を有するスレッドは、システムオーバーヘッドを節約するために削除してもよい。
【0073】
一部の選択可能な実施形態では、スマート装置とサーバとの間に再使用可能な通信リンクが存在する。たとえば、通信リンクはHTTP2.0を使用して構築することができる。スマート装置とサーバとの間に再利用可能な通信リンクを構築することにより、データ送信毎に通信リンクを構築することを回避し、これによりデータ送信効率を改善する。例えば、より速く、より効率的にサービス情報を受信したり、アップロード待ちイベントをアップロードすることができる。
【0074】
図4からわかるように、本実施形態によるスマート装置のタスク処理方法のプロセス400は、図2に対応する実施形態と比較して、アップロード待ちイベントのアップロードを強調した。その結果、本実施形態に係る技術案は、アップロード待ちイベントキューを介してアップロード待ちイベントをアップロードすることにより、アップロード待ちイベントのアップロード効率を向上させることができる。
【0075】
上記の各図に示された方法の実施態様として、本発明は、スマート装置のタスク処理装置の実施形態を提供する。装置の実施形態は、図2に示される方法の実施形態に対応し、装置は、様々なスマート装置に具体的に適用され得る。
【0076】
図5に示すように、本実施形態に係るスマート装置のタスク処理装置500は、受信ユニット501、解析ユニット502、配分ユニット503及び処理ユニット504を含む。受信ユニット501は、所定のデータフォーマットのタスク記述情報を含む、サーバから送信されたサービス情報を受信するように構成されている。解析ユニット502は、処理待ちタスクを決定するために、所定のデータフォーマットに基づいてサービス情報を解析するように構成されている。配分ユニット503は、処理待ちタスクを処理待ちタスクキューに配分するように構成されており、処理ユニット504は、処理待ちタスクキューの処理待ちタスクを処理するように構成されている。
【0077】
本実施形態において、スマート装置のタスク処理装置500の受信ユニット501は、有線接続または無線接続によってサーバから所定のフォーマットのタスク記述情報を含むサービス情報を受信することができる。
【0078】
本実施形態において、解析ユニット502は、受信ユニット501で受信されたサービス情報を所定のデータフォーマット(例えば、JSONフォーマット)に基づいて解析して、解析されたタスク記述情報を取得し、解析されたタスク記述情報にもとづいて処理待ちタスクを生成する。
【0079】
本実施形態において、配分ユニット503は、少なくとも1つの処理待ちタスクキューを予め設定しておき、解析ユニット502によって決定された処理待ちタスクを処理待ちタスクキューに配分することができる。
【0080】
本実施形態では、処理ユニット504は、処理待ちタスクの種類(例えば、並行タスクキュー又はシリアルタスクキュー)及び処理待ちタスクの属性(例えば、生成時間や優先度)に基づいて、処理待ちタスクキューにおける処理待ちタスクを処理する。
【0081】
本実施形態の一部の選択可能な実装形態では、処理待ちタスクキューは並行タスクキューであり、処理待ちタスクキューにおける処理待ちタスクを処理することは、上記処理待ちタスクキューが空白でないとともに、第1のスレッドプールにアイドルスレッドが存在することに応じて、上記処理待ちタスクキューの少なくとも一部の処理待ちタスクを上記第1のスレッドプールに追加するステップであって、上記少なくとも一部の処理待ちタスクにおける処理待ちタスクの数が、上記第1のスレッドプールにおけるアイドルスレッドの数以下であるステップと、上記少なくとも一部の処理待ちタスクが実行終了した後に、上記少なくとも一部の処理待ちタスクを上記処理待ちタスクキューから除去するステップと、を含む。
【0082】
本発明の実施形態の一部の選択可能な実装形態では、処理待ちタスクキューは、シリアルタスクキューであり、上記処理待ちタスクキューにおける上記処理待ちタスクを処理するステップは、処理中の処理待ちタスクが存在しないとともに、上記シリアルタスクキューが空白でないことに応じて、上記シリアルタスクキューの先頭に位置する処理待ちタスクを第1のタスクとし、シリアル処理ステップを実行するステップであって、上記シリアル処理ステップは、上記第1のタスクを実行した後に、上記第1のタスクを上記シリアルタスクキューから除去するステップである、ステップと、上記シリアルタスクキューが空白でないことに応じて、上記シリアルタスクキューの先頭に位置する上記処理待ちタスクを上記第1のタスクとし、上記シリアル処理ステップを継続する、ステップと、を含む。
【0083】
本発明の実施形態の一部の選択可能な実装形態では、サービス情報は、スマート装置から受信されたイベント情報に基づいてサーバによって生成され、イベント情報は、スマート装置の音声入力情報または処理待ちタスクを実行する期間のスマート装置の状態変化情報のうちの少なくとも1つを含む。
【0084】
本発明の実施形態の一部の選択可能な実装形態では、装置500は、イベント情報をサーバに送信するように構成されたイベントユニットをさらに含む。
【0085】
本実施形態の一部の選択可能な実装形態では、イベントユニットは、イベント生成モジュール、イベント配分モジュール、およびアップロードモジュールを含む。イベント生成モジュールは、イベント情報に基づいてアップロード待ちイベントを生成するように構成されている。上記イベント配分モジュールは、上記アップロード待ちイベントをアップロード待ちイベントキューに配分するように構成され、上記アップロードモジュールは、上記アップロード待ちイベントキューの上記アップロード待ちイベントを所定のデータフォーマットで上記サーバに送信するように構成されている。
【0086】
本発明の実施形態の一部の選択可能な実施形態では、アップロードモジュールは、上記アップロード待ちイベントキューが空白でないとともに、第2のスレッドプールにアイドルスレッドが存在することに応じて、上記アップロード待ちイベントキューにおける少なくとも一部のアップロード待ちイベントを上記第2のスレッドプールに追加する実行サブモジュールであって、上記少なくとも一部のアップロード待ちイベントにおけるアップロード待ちイベントの数が、上記第2のスレッドプールにおけるアイドルスレッドの数以下である、実行サブモジュールと、上記少なくとも一部のアップロード待ちイベントが実行完了した後に、上記少なくとも一部のアップロード待ちイベントを、アップロード待ちイベントキューから除去する除去サブモジュールとを含む。
【0087】
本発明の実施形態の一部の選択可能な実施形態では、スマート装置とサーバとの間に再使用可能な通信リンクが存在する。
【0088】
本発明の実施形態によるスマート装置のタスク処理装置は、処理待ちタスクキューに処理待ちタスクを配分することにより、処理待ちタスクの処理効率を向上させることができる。
【0089】
続いて図6を参照する。図6は、本発明の実施形態を実現するための電子装置に適用されるコンピュータシステム600の構成模式図を示した。図6に示された電子装置は一つの例示に過ぎず、本発明の実施形態の機能及び使用範囲に制限しない。
【0090】
図6に示されたように、コンピュータシステム600は、読み出し専用メモリ(ROM)602に記憶されているプログラム又は記憶部606からランダムアクセスメモリ(RAM)603にロードされたプログラムに基づいて様々な適当な動作および処理を実行することができる中央処理装置(CPU)601を備える。RAM603には、システム600の操作に必要な様々なプログラムおよびデータがさらに記憶されている。CPU601、ROM602およびRAM 603は、バス604を介して互いに接続されている。入力/出力(I/O)インターフェース606もバス604に接続されている。
【0091】
キーボード、マウスなどを含む入力部606、陰極線管(CRT)、液晶ディスプレイ(LCD)など、およびスピーカなどを含む出力部607、ハードディスクなどを含む記憶部608、およびLANカード、モデムなどを含むネットワークインターフェースカードの通信部609は、I/Oインターフェース606に接続されている。通信部609は、例えばインターネットのようなネットワークを介して通信処理を実行する。ドライバ610は、必要に応じてI/Oインターフェース606に接続される。リムーバブルメディア611は、例えば、マグネチックディスク、光ディスク、光磁気ディスク、半導体メモリなどのようなものであり、必要に応じてドライバ610に取り付けられ、したがって、ドライバ610から読み出されたコンピュータプログラムが必要に応じて記憶部608にインストールされる。
【0092】
特に,本発明の実施形態によれば、上記のフローチャートに参照して説明された過程はコンピュータソフトウェアプログラムに実現されても良い。例えば、本発明の実施形態はコンピュータ読取可能な媒体にロードされるコンピュータプログラムを含むコンピュータプログラム製品を備える。当該コンピュータプログラムは、フローチャートに示される方法を実行するためのプログラムコードを含む。このような実施形態において、当該コンピュータプログラムは、通信部609を介してネットワークからダウンロードしてインストールされ、及び/又はリムーバブルメディア611からインストールされても良い。当該コンピュータプログラムは、中央処理ユニット(CPU)601により実行される場合に、本発明の方法に限定される上記機能を実行する。
【0093】
説明すべきなのは、本発明のコンピュータ読取可能な媒体は、コンピュータ読取可能な信号媒体、コンピュータ読取可能な記憶媒体、或いは上記両者の任意の組合わせであっても良い。コンピュータ読取可能な記憶媒体は、例えば電気、磁気、光、電磁気、赤外線、半導体のシステム、サーバ又は部品、或いはこれらの任意の組み合わせであっても良いが、それらに限定されない。コンピュータ読取可能な記憶媒体についてのより具体的な例は、一つ又は複数の導線を含む電気的な接続、携帯可能なコンピュータ磁気ディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、消去可能なプログラミング読取専用メモリ(EPROM又はフラッシュ)、光ファイバ、携帯可能なコンパクト磁気ディスク読取専用メモリ(CD-ROM)、光学記憶素子、磁気記憶素子、或いは上記の任意の適当の組み合わせを含むが、それらに限定されない。本発明において、コンピュータ読取可能な記憶媒体は、プログラムを含むか記憶する任意の有形の媒体であっても良い。当該プログラムは、コマンドによりシステム、サーバ又は部品の使用を実行し、或いはそれらに組合わせて使用されても良い。本発明において、コンピュータ読取可能な信号媒体は、ベースバンドに伝送され或いはキャリアの一部として伝送され、コンピュータ読取可能なプログラムコードがロードされるデータ信号を含んでも良い。このような伝送されるデータ信号は、各種のフォーマットを採用しても良く、電磁気信号、光信号又は上記の任意の適当の組合わせを含むが、それらに限定されない。コンピュータ読取可能な信号媒体は、コンピュータ読取可能な記憶媒体以外の任意のコンピュータ読取可能な媒体であっても良い。当該コンピュータ読取可能な媒体は、コマンドによりシステム、サーバ又は部品の使用を実行し又はそれらと組合わせて使用されるプログラムを送信し、伝播し又は伝送することができる。コンピュータ読取可能な媒体に含まれるプログラムコードは、任意の適当の媒体で伝送されても良く、無線、電線、光ケーブル、RFなど、或いは上記の任意の適当の組み合わせを含むが、それらに限定されない。
【0094】
図面におけるフローチャート及びブロック図は、本発明の各実施形態によるシステム、方法及びコンピュータプログラム製品により実現可能なシステム構造、機能及び操作を示した。この点において、フローチャート又はブロック図における各ブロックは、一つのモジュール、プログラムセグメント、又はコードの一部を表すことができる。当該モジュール、プログラムセグメント、コードの一部には、一つ又は複数の所定のロジック機能を実現するための実行可能なコマンドが含まれる。注意すべきなのは、幾つかの置換としての実現において、ブロックに示される機能は図面に示される順序と異なって発生されても良い。例えば、二つの接続的に表示されるブロックは実際に基本的に併行に実行されても良く、場合によっては逆な順序で実行されても良く、関連の機能に従って決定される。
【0095】
注意すべきなのは、ブロック図及び/又はフローチャートにおける各ブロック、及びブロック図及び/又はフローチャートにおけるブロックの組合わせは、所定の機能又は操作を実行する専用のハードウェアによるシステムで実現されても良く、或いは専用のハードウェアとコンピュータコードの組合わせで実現されても良い。
【0096】
本発明の実施形態に説明されたユニットは、ソフトウェアの手段で実現されても良く、ハードウェアの手段で実現されても良い。説明されたユニットは、プロセッサに設置されても良い。例えば、受信ユニットと、解析ユニットと、配分ユニットと、処理ユニットとを備えるプロセッサとして記載されても良い。なお、これらのユニットの名称は場合によってユニットの自身に対する限定とされない。例えば、受信ユニットは、「所定のデータフォーマットのタスク記述情報を含むサービス情報をサーバから受信するユニット」と記載されても良い。
【0097】
他の局面として、本発明は更にコンピュータ読取可能な媒体を提供した。当該コンピュータ読取可能な媒体は、上記実施形態に説明された装置に含まれたものであっても良く、当該装置に実装されずに別途に存在するものであっても良い。上記コンピュータ読取可能な媒体には、一つ又は複数のプログラムがロードされる。上記一つ又は複数のプログラムが当該装置により実行されると、当該装置に、タスク記述情報を含むサービス情報を受信した後、処理待ちタスクキューに配分し、その後に、処理待ちタスクキューにおける処理待ちタスクを処理するように実行させる。
【0098】
以上の記載は、ただ本発明の好適な実施形態及び運用される技術原理に対する説明である。当業者であればわかるように、本発明にかかる発明範囲は、上記技術特徴の特定の組み合わせからなる技術案に限定されず、上記の発明構想から逸脱されない場合に上記技術特徴又は均等の特徴による任意の組み合わせで形成される他の技術案も同時に含まれべきである。例えば上記特徴と本発明に開示された(それらに限定されない)類似の機能を具備する技術特徴が互いに置換されて得られる技術案は該当する。
図1
図2
図3
図4
図5
図6