JP4729611B2 - イベントキュー管理装置及びイベントキュー管理方法 - Google Patents

イベントキュー管理装置及びイベントキュー管理方法 Download PDF

Info

Publication number
JP4729611B2
JP4729611B2 JP2008280251A JP2008280251A JP4729611B2 JP 4729611 B2 JP4729611 B2 JP 4729611B2 JP 2008280251 A JP2008280251 A JP 2008280251A JP 2008280251 A JP2008280251 A JP 2008280251A JP 4729611 B2 JP4729611 B2 JP 4729611B2
Authority
JP
Japan
Prior art keywords
event
queue
type
queue management
new
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.)
Expired - Fee Related
Application number
JP2008280251A
Other languages
English (en)
Other versions
JP2010108294A (ja
Inventor
章子 戸部
二朗 土屋
雅之 津田
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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2008280251A priority Critical patent/JP4729611B2/ja
Priority to EP09823608A priority patent/EP2352089A4/en
Priority to CN200980143279.6A priority patent/CN102203738B/zh
Priority to PCT/JP2009/068481 priority patent/WO2010050498A1/ja
Priority to US13/126,580 priority patent/US8539509B2/en
Publication of JP2010108294A publication Critical patent/JP2010108294A/ja
Application granted granted Critical
Publication of JP4729611B2 publication Critical patent/JP4729611B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、イベントのキュー管理を行うイベントキュー管理装置及びイベントキュー管理方法に関する。
従来から、大量のイベントが発生した場合に、これらのイベントのキュー管理を行うキュー管理装置が知られている(例えば、特許文献1参照)。この従来のキュー管理装置は、システムの処理負荷を超えるような膨大な量のイベントが発生すると、イベントキューに格納されたイベントのうち、所定の基準を満たさないキューを削除することで、負荷の急激な上昇を抑制するものである。
一方、計算機や移動型小型情報端末のソフトウェア内部処理では、イベント配送システムモデルなどを用いて、ソフトウェアモジュール間の信号伝達を行う場合がある。これは、例えば、ユーザの操作イベント、ハードウェアタイマなどによって指定時刻や指定時間経過後に発生するイベント、特定ハードウェアが特定状態になったことを受けて発生する割り込みに起因するイベントなどのイベントが発生すると、アプリケーションがイベントハンドラでイベントを受け取り、発生したイベントに対応した適切な処理を行うものである。
特開平04−345248号公報
ところで、携帯電話などの移動機では、VM(Virtual Machine)などのアプリケーション実行環境において、様々なイベントハンドラでイベントを受け取るアプリケーションが動作可能となっている。一方、音声通話中などは、VMがサスペンド状態となって一時的に停止状態となるため、移動機にイベントが発生しても、アプリケーションのイベントハンドラにはイベントが配送されない状態となる。
そして、VMがサスペンド状態となっているときに、移動機にイベントが発生した際、この間に発生した全てのイベントがイベントキューに格納され、その後、VMがサスペンド状態から復帰(レジューム)すると、イベントキューに格納されていた全てのイベントが一気に連続してVMに渡される。
このため、例えば、イベントキューに同じイベントが重複して格納されていると、サスペンド状態から復帰したときに、アプリケーションが同じイベントハンドラを連続して起動させるため、同じ処理が連続して実行されるという問題があった。
このため、従来は、アプリケーションを作成する際、VMの復帰により不要なイベントや期待していないイベントが一気に連続してVMに渡されることを考慮する必要があるという問題があった。
なお、特許文献1に記載された技術では、システムに発生しているイベントの量に応じて優先基準値が変動するため、アプリケーションを作成する際、特定イベントのイベントハンドラが実行されないケースを考慮する必要があり、アプリケーションの作成コストが高くなり、豊富なコンテンツ流通の阻害要因になるという問題がある。
そこで、本発明は、アプリケーション実行環境がサスペンド状態から復帰したときに、不要なイベントによりアプリケーションが連続して実行されるのを防止することができるイベントキュー管理装置及びイベントキュー管理方法を提供することを目的とする。
本発明に係るイベントキュー管理装置は、イベントが発生すると、イベント種別に応じて設けられた複数のイベントハンドラがイベントを受け取ってアプリケーション実行環境において動作するアプリケーションに通知する移動機において、イベントのキュー管理を行うイベントキュー管理装置であって、発生したイベントをキューに格納してイベントのキュー管理を行うキュー管理手段と、キュー管理手段によりキュー管理されているイベントのイベント種別を検出するイベント種別検出手段と、イベントハンドラがイベントを受け取ることができないアプリケーション実行環境の停止状態を検出する停止状態検出手段と、新規のイベントの発生を検出する新規イベント検出手段と、停止状態検出手段がアプリケーション実行環境の停止状態を検出すると、新規イベント検出手段により新規にイベントを検出したときに、イベント種別検出手段により検出されたイベントのイベント種別を参照して、キュー管理手段によりキューに格納されているイベントのうち、新規に発生したイベントのイベント種別と同じイベント種別のイベントを不要イベントとして削除するイベント削除手段と、を有し、キュー管理手段は、イベント削除手段により不要イベントが削除された後、新規に発生したイベントをキューに追加格納することを特徴とする。
本発明に係るイベントキュー管理方法は、イベントが発生すると、イベント種別に応じて設けられた複数のイベントハンドラがイベントを受け取ってアプリケーション実行環境において動作するアプリケーションに通知する移動機において、イベントのキュー管理を行うイベントキュー管理方法であって、発生したイベントをキューに格納してイベントのキュー管理を行うキュー管理ステップと、キュー管理ステップによりキュー管理されているイベントのイベント種別を検出するイベント種別検出ステップと、イベントハンドラがイベントを受け取ることができないアプリケーション実行環境の停止状態を検出する停止状態検出ステップと、新規のイベントの発生を検出する新規イベント検出ステップと、停止状態検出ステップでアプリケーション実行環境の停止状態を検出すると、新規イベント検出ステップにより新規にイベントを検出したときに、イベント種別検出ステップにより検出されたイベントのイベント種別を参照して、キュー管理ステップによりキューに格納されているイベントのうち、新規に発生したイベントのイベント種別と同じイベント種別のイベントを不要イベントとして削除するイベント削除ステップと、を有し、キュー管理ステップは、イベント削除ステップにより不要イベントが削除された後、新規に発生したイベントをキューに追加格納することを特徴とする。
本発明に係るイベントキュー管理装置及びイベントキュー管理方法によれば、発生したイベントはキューに格納されてキュー管理されるが、アプリケーション実行環境が停止状態になると、キューに格納されているイベントのうち、イベント種別に基づいて不要なイベントが検索されて削除されるため、アプリケーション実行環境が停止状態であるサスペンド状態から復帰したときに、不要なイベントによりアプリケーションが連続して実行されるのを防止することができ、省電力化を図ることができる。しかも、アプリケーションを作成する際、不要なイベントによりアプリケーションが連続して実行されることを考慮しなくて済むため、アプリケーションの作成コストを低減することができる。
この場合、イベント種別検出手段は、キュー管理手段によりキュー管理されているイベントのイベント種別及びパラメータを検出し、イベント削除手段は、停止状態検出手段がアプリケーション実行環境の停止状態を検出すると、新規イベント検出手段により新規にイベントを検出したときに、イベント種別検出手段により検出されたイベントのイベント種別及びパラメータを参照して、キュー管理手段によりキューに格納されているイベントのうち、新規に発生したイベントのイベント種別及びパラメータと同じイベント種別及びパラメータのイベントを不要イベントとして削除することが好ましい。
そして、キュー管理手段は、イベント削除手段により不要イベントが削除された後、新規に発生したイベントをキューの最後尾に追加格納することが好ましい。
本発明によれば、アプリケーション実行環境が停止状態から復帰したときに、不要なイベントによりアプリケーションが連続して実行されるのを防止することができる。
以下、本発明に係るイベントキュー管理装置及びイベントキュー管理方法の実施形態について図面を参照して説明する。本実施形態では、本発明に係るイベントキュー管理モジュールを携帯電話などの移動機に適用するものとして説明する。なお、各図において、同一要素には同一符号を付して重複する説明を省略する。
図1は、本実施形態に係るイベントキュー管理モジュールが搭載された移動機の構成図である。図1に示すように、本実施形態に係るイベントキュー管理モジュール101は、移動機100に搭載されている。なお、移動機100は、折り畳み式の開閉可能な構造となっている。そして、移動機100には、基本ソフトウェア部103と、アプリケーション実行環境104と、アプリケーション実装本体105とが設けられている。
基本ソフトウェア部103は、移動機100の各種機能を実現するための基本ソフトウェアが組み込まれたものである。そして、基本ソフトウェア部103には、低位層として、メッセージ送受信部107と、開閉検出スイッチ108と、タイマモジュール109と、メッセージボックス110とが設けられており、各低位層で発生したイベントを検出するイベント検出手段として、メッセージボックス増減検出部111と、端末開閉状態検出部112と、指定タイマ時刻検出部113とが設けられている。
メッセージ送受信部107は、移動機100外部との間でメールやメッセージなどの送受信を行うものである。そして、メッセージ送受信部107は、メールやメッセージを送受信すると、この送受信したメールやメッセージをメッセージボックス110に保存する。
開閉検出スイッチ108は、移動機100のヒンジ部分などに設けられたスイッチセンサを監視することにより、移動機100の開閉状態が変動したことを検出するものである。
タイマモジュール109は、内部に搭載されたリアルタイムクロックにより指定された時刻になったことを検出すると、割り込み信号を送信するものである。
メッセージボックス110は、メッセージ送受信部107が送受信したメールやメッセージを保存する記憶装置である。そして、メッセージボックス110は、この保存したメールやメッセージを、フォルダ単位で管理している。
メッセージボックス増減検出部111は、メッセージボックス110に記憶されるメールがフォルダ単位で増減したことを検出するイベント検出手段である。そして、メッセージボックス増減検出部111は、フォルダ単位でメールが増減したイベントを検出すると、イベント種別が“メッセージBOXイベント”のイベントオブジェクトを、アプリケーション実行環境104に通知する。
端末開閉状態検出部112は、移動機100の形状が開から閉に、又は、閉から開に変化したことを検出するイベント検出手段である。そして、端末開閉状態検出部112は、移動機100の開閉状態が変化したイベントを検出すると、イベント種別が“移動機開変化イベント”又は“移動機閉変化イベント”のイベントオブジェクトを、アプリケーション実行環境104に通知する。
指定タイマ時刻検出部113は、上位アプリケーションからの要求に応じて、タイマモジュール109を利用して指定された時刻になったことを検出するイベント検出手段である。そして、指定タイマ時刻検出部113は、指定された時刻になったとのイベントを検出すると、イベント種別が“指定時刻イベント”のイベントオブジェクトを、アプリケーション実行環境104に通知する。
図2は、イベントオブジェクトの構成例を示す図である。図2に示すように、基本ソフトウェア部103の各イベント検出手段111〜113から通知されるイベントオブジェクト130は、種別管理部131と、パラメータ部132とにより構成されている。種別管理部131には、イベント種別を示す情報が記述されており、イベントが基本ソフトウェア部103のどの検出部によって発生したイベントであるかを示している。パラメータ部132には、イベントの種別毎に定義された構造に従ってイベントの保有する情報が記述されている。なお、図2に示すイベントオブジェクト130には、種別管理部131に、イベント種別として“メッセージBOXイベント”が記述されており、パラメータ部132に、パラメータとして、メッセージボックス110のBOX番号1に対して、2008年5月12日11時4分23秒にメッセージが到着したことが記述されている。なお、パラメータ部132のBOX番号は、メッセージボックス110のフォルダに対応するものである。
また、図1に示すように、アプリケーション実装本体105は、アプリケーション実行環境104上で動作するアプリケーション実装の本体部分であり、様々なイベントをイベントハンドラ経由で取得することができる。イベントハンドラは、イベントが発生することにより、アプリケーション実行環境104から呼び出されること(アプリケーション実行環境104により実行されること)を予定して作成されたものである。そして、アプリケーション実装本体105には、イベントハンドラとして、メッセージボックス状態ハンドラ122と、端末開閉状態ハンドラ123と、指定タイマ時刻検出ハンドラ124とが設けられている。
メッセージボックス状態ハンドラ122は、メッセージボックス110においてフォルダ単位でメールが増減したイベントが発生すると、アプリケーション実行環境から呼び出され、当該フォルダにおいてメールが増減したことをアプリケーションに通知する処理を行うものである。
端末開閉状態ハンドラ123は、移動機100の開閉状態が変化したイベントが発生すると、この開閉状態の変化をアプリケーションに通知し、アプリケーションの振る舞いを変更する処理を行うものである。
指定タイマ時刻検出ハンドラ124は、指定された時刻になったとのイベントが発生すると、指定された時刻になったことをアプリケーションに通知する処理を行うものであり、例えば、通知を受けたアプリケーションは、アラーム音を発生させるなどの処理を呼び出すことができる。
そして、アプリケーション実行環境104は、基本ソフトウェア部103に組み込まれた基本ソフトウェア上で動作する実行環境であり、アプリケーション実装本体105を動作させるためのVM(Virtual Machine)である。すなわち、アプリケーション実行環境104は、基本ソフトウェア部103の各イベント検出手段(内部のメッセージボックス増減検出部111、端末開閉状態検出部112及び指定タイマ時刻検出部113)からイベントオブジェクト130が通知されると、イベントハンドラ122〜124を呼び出すものである。このアプリケーション実行環境104は、通常、イベントハンドラ122〜124でイベントを受け取ることができる状態となっているが、音声通話中などは、一時的にイベントハンドラ122〜124でイベントを受け取ることができないサスペンド状態(停止状態)となる。そして、アプリケーション実行環境104には、基本ソフトウェア部103から通知されたイベントオブジェクト130をキュー管理するイベントキュー管理モジュール101が設けられている。
図3は、イベントキュー管理モジュールの構成を示す図である。図3に示すように、イベントキュー管理モジュール101には、基本ソフトウェア部103の各イベント検出手段(メッセージボックス増減検出部111、端末開閉状態検出部112及び指定タイマ時刻検出部113)から通知されたイベントオブジェクト130を格納するイベントキュー117が設けられている。そして、イベントキュー管理モジュール101には、キュー管理部118と、イベント種別検出部119と、停止状態検出部120と、イベント削除部121の各機能が設けられている。
キュー管理部118は、基本ソフトウェア部103の各イベント検出手段(メッセージボックス増減検出部111、端末開閉状態検出部112及び指定タイマ時刻検出部113)から通知されたイベントオブジェクト130を、イベントの発生順にイベントキュー117に格納してキュー管理を行うものである。
イベント種別検出部119は、キュー管理部118によりキュー管理されているイベントオブジェクト130のイベント種別及びパラメータを検出するものである。すなわち、イベント種別検出部119は、基本ソフトウェア部103の各イベント検出手段111〜113から新規のイベントオブジェクト130が通知されると、このイベントオブジェクト130の種別管理部131及びパラメータ部132を参照して、新規に発生したイベントの種別及びパラメータを判定する。例えば、図2に示すイベントオブジェクト130が新規に発生したイベントである場合、このイベントの種別は、メッセージBOXイベントであり、このパラメータは、BOX番号1にメッセージが到着したものであることを検出する。そして、イベント種別検出部119は、イベントオブジェクト130がイベントキュー117に格納される際に、キュー管理部118のキュー管理情報として当該イベントオブジェクト130のイベント種別及びパラメータを登録する。
停止状態検出部120は、アプリケーション実行環境104の実行状態を監視することで、アプリケーション実行環境104が停止状態であることを検出するものである。
イベント削除部121は、アプリケーション実行環境104が停止状態のときに、イベントキュー117に格納されているイベントオブジェクト130のうち特定の不要なイベントオブジェクト130を削除するものである。すなわち、イベント削除部121は、停止状態検出部120がアプリケーション実行環境104の停止状態である場合にイベントの到着を検出すると、イベント種別検出部119により登録されたイベントオブジェクト130のイベント種別及びパラメータを参照して、イベントキュー117に格納されているイベントオブジェクト130のうち、特定の不要なイベントオブジェクト130を検索して削除する。この特定のイベントオブジェクト130は、例えば、新規のイベントオブジェクト130のイベント種別と同じイベント種別のイベントオブジェクト130であって、イベントキュー117内に複数個格納されていることに意味がないイベントオブジェクト130などである。
図4は、移動機のハードウェア構成を例示する図である。なお、図4に示すように、移動機100は、物理的には、CPU201と、ROM202と、RAM203と、補助記憶装置204と、通信モジュール205と、操作部206と、ディスプレイ207とを備える。そして、イベントキュー管理モジュール101は、移動機100の一機能として動作し、図3において説明した各機能は、図4に示すCPU201やRAM203上に所定のコンピュータソフトウェアを読み込ませることにより、CPU201の制御のもとで通信モジュール205を動作させると共に、RAM203や補助記憶装置204におけるデータの読み出し及び書き込みを行うことで実現される。
次に、図5を参照して、本実施形態に係るイベントキュー管理モジュール101の処理動作について説明する。図5は、イベントキュー管理モジュールの処理動作を説明するためのフローチャートである。なお、図5は、移動機100が音声通話を行っている場合など、アプリケーション実行環境104がサスペンド状態になったときの処理動作を示している。
図5に示すように、イベントキュー管理モジュール101は、アプリケーション実行環境104がサスペンド状態になると、イベント待機状態となり、新規にイベントが発生するまで待機している(ステップS1)。
そして、基本ソフトウェア部103においてイベントが発生すると、イベントキュー管理モジュール101は、イベント検出手段111〜113からイベントオブジェクト130が通知される(ステップS2)。
そして、イベントキュー管理モジュール101は、発生したイベントの種別とパラメータを確認する(ステップS3)。すなわち、ステップS3では、イベント種別検出部119において、ステップS2で通知されたイベントオブジェクト130の種別管理部131及びパラメータ部132を参照することで、新規に発生したイベントの種別とパラメータを確認する。
そして、イベントキュー管理モジュール101は、イベント種別が移動機開閉変化イベントであるか否かを判定する(ステップS4)。
ステップS4において、イベント種別が移動機開閉変化イベントであると判定した場合(ステップS4:YES)、イベントキュー管理モジュール101は、ステップS5に進み、イベント削除部121により、イベントキュー117に格納されているイベントオブジェクト130のうち、新規に発生したイベントのイベント種別と同じイベント種別のイベントオブジェクト130を削除する(ステップS5)。上述したように、イベント種別検出部119では、イベントオブジェクト130をイベントキュー117に格納する際に、キュー管理情報としてイベント種別を登録している。このため、ステップS5では、キュー管理情報に登録されているイベント種別と、ステップS3において判定した新規に発生したイベントのイベント種別とを比較することで、イベントキュー117に格納されているイベントオブジェクト130のうち、新規に発生したイベントのイベント種別と同じイベント種別のイベントオブジェクト130を検索して削除する。
そして、イベントキュー管理モジュール101は、新規に発生したイベントのイベントオブジェクト130を、イベントキュー117の最後尾に追加格納する(ステップS6)。これにより、イベントキュー117に格納されたイベントオブジェクト130のうち、移動機100の開閉状態が変化したイベントのイベントオブジェクト130は、最後尾に追加格納されたイベントオブジェクト130のみとなる。
一方、上述したステップS4において、イベント種別が移動機開閉変化イベントでないと判定した場合(ステップS4:NO)、イベントキュー管理モジュール101は、ステップS7に進み、イベント種別がメッセージBOXイベントであるか否かを判定する(ステップS7)。
ステップS7において、イベント種別がメッセージBOXイベントであると判定した場合(ステップS7:YES)、イベントキュー管理モジュール101は、ステップS8に進み、イベント削除部121により、イベントキュー117に格納されているイベントオブジェクト130のうち、新規に発生したイベントのイベント種別及びパラメータと同じイベント種別及びパラメータのイベントオブジェクト130を削除する(ステップS8)。上述したように、メッセージボックス110ではメールの増減をフォルダ単位で管理しているため、同じイベント種別でも、メールが増減したフォルダが異なれば、別のイベントとして考えられる。このため、ステップS7では、イベントキュー117に格納されているイベントオブジェクト130のうち、新規に発生したイベントのイベント種別が同じであるとともに、パラメータのBOX番号が同じ(メールが増減したフォルダが同じ)イベントオブジェクト130を検索して削除する。なお、ステップS8では、イベントオブジェクト130(図2参照)のパラメータのうち、変更時刻が異なっていても、BOX番号及び変更種類が同じであれば、パラメータが同じであると判断する。
そして、イベントキュー管理モジュール101は、新規に発生したイベントのイベントオブジェクト130を、イベントキュー117の最後尾に追加格納する(ステップS6)。これにより、イベントキュー117に格納されたイベントオブジェクト130のうち、同一フォルダ(BOX番号)においてメールが増減したイベントのイベントオブジェクト130は、最後尾に追加格納されたイベントオブジェクト130のみとなる。
一方、ステップS7において、イベント種別がメッセージBOXイベントでないと判定した場合(ステップS7:NO)、イベントキュー管理モジュール101は、ステップS6に進み、新規に発生したイベントのイベントオブジェクト130を、イベントキュー117の最後尾に追加格納する(ステップS6)。
このように、本実施形態に係るイベントキュー管理モジュール101よれば、アプリケーション実行環境104がサスペンド状態になると、新規に発生したイベントのイベントオブジェクト130はイベントキュー117に格納されてキュー管理されるが、イベントキュー117に格納されているイベントオブジェクト130のうち特定の不要なイベントオブジェクト130は削除されるため、アプリケーション実行環境104がサスペンド状態から復帰したときに、不要なイベントオブジェクト130によりイベントハンドラ122〜124が呼び出されて、アプリケーションが連続して実行されるのを防止することができ、アプリケーションを作成する際、不要なイベントオブジェクト130により同じイベントハンドラ122〜124が連続して呼び出されることを考慮しなくて済むため、例えば、「連続してイベントが発生した場合に後続イベントのハンドラを無効化する」といったコードの記載を省くことができ、アプリケーションの作成コスト・試験コストを低減することができる。
また、新規にイベントが発生するたびに、イベントキュー117から不要なイベントオブジェクト130が削除されるため、イベントキュー117には、常に不要なイベントがない状態となる。このため、アプリケーション実行環境104がサスペンド状態から復帰する時期に関わらず、不要なイベントオブジェクト130によりイベントハンドラが呼び出されてアプリケーションが連続して実行されるのを防止することができる。
また、イベントキューに格納されているイベントオブジェクト130のうち、新規に発生したイベントのイベント種別と同じイベント種別のイベントオブジェクト130が削除されるため、アプリケーション実行環境104がサスペンド状態から復帰したときに、同じイベント種別のイベントオブジェクト130によりイベントハンドラが呼び出されてアプリケーションが連続して実行されるのを防止することができる。
以上、本発明をその実施形態に基づき具体的に説明したが、本発明は上記実施形態に限定されるものではない。例えば、上記実施形態では、3種類のイベントが発生し、アプリケーションによりこのイベントに対応した処理が実行されるものとして説明したが、イベントの内容や種別数、アプリケーションの処理内容は特に限定されるものではない。そして、イベントキュー管理モジュール101は、イベントの種別やアプリケーションの処理内容に応じて、イベントキュー117に格納されたイベントオブジェクト130を削除する基準を適宜変更してもよい。
また、上記実施形態では、新規のイベントオブジェクト130のイベント種別と同じイベント種別のイベントオブジェクト130を不要なイベントとして削除したが、例えば、関連又は類似するイベント種別をグループ化して登録しておき、この登録情報を参照することで、新規のイベントオブジェクト130のイベント種別と関連又は類似するイベント種別のイベントオブジェクト130を不要なイベントとして削除してもよい。
また、上記実施形態では、イベントキュー管理モジュール101をアプリケーション実行環境104に設けるものとして説明したが、例えば、基本ソフトウェア部103やアプリケーション実装本体105などに設けてもよく、独立して移動機100に設けてもよい。
本実施形態に係るイベントキュー管理モジュールが搭載された移動機の構成図である。 イベントオブジェクトの構成例を示す図である。 イベントキュー管理モジュールの構成を示す図である。 移動機のハードウェア構成を例示する図である。 イベントキュー管理モジュールの処理動作を説明するためのフローチャートである。
符号の説明
100…移動機、101…イベントキュー管理モジュール、103…基本ソフトウェア部、104…アプリケーション実行環境、105…アプリケーション実装本体(アプリケーション)、107…メッセージ送受信部、108…開閉検出スイッチ、109…タイマモジュール、110…メッセージボックス、111…メッセージボックス増減検出部、111…メッセージボックス増減検出部、112…端末開閉状態検出部、113…指定タイマ時刻検出部、117…イベントキュー、118…キュー管理部、119…イベント種別検出部、120…停止状態検出部、121…イベント削除部、122…メッセージボックス状態ハンドラ、123…端末開閉状態ハンドラ、124…指定タイマ時刻検出ハンドラ、130…イベントオブジェクト、131…種別管理部、132…パラメータ部。

Claims (4)

  1. イベントが発生すると、イベント種別に応じて設けられた複数のイベントハンドラが前記イベントを受け取ってアプリケーション実行環境において動作するアプリケーションに通知する移動機において、前記イベントのキュー管理を行うイベントキュー管理装置であって、
    発生したイベントをキューに格納して前記イベントのキュー管理を行うキュー管理手段と、
    前記キュー管理手段によりキュー管理されている前記イベントのイベント種別を検出するイベント種別検出手段と、
    前記イベントハンドラが前記イベントを受け取ることができない前記アプリケーション実行環境の停止状態を検出する停止状態検出手段と、
    新規のイベントの発生を検出する新規イベント検出手段と、
    前記停止状態検出手段が前記アプリケーション実行環境の停止状態を検出すると、前記新規イベント検出手段により新規にイベントを検出したときに、前記イベント種別検出手段により検出された前記イベントのイベント種別を参照して、前記キュー管理手段により前記キューに格納されているイベントのうち、前記新規に発生したイベントのイベント種別と同じイベント種別のイベントを不要イベントとして削除するイベント削除手段と、
    を有し、
    前記キュー管理手段は、前記イベント削除手段により前記不要イベントが削除された後、前記新規に発生したイベントを前記キューに追加格納することを特徴とするイベントキュー管理装置。
  2. 前記イベント種別検出手段は、前記キュー管理手段によりキュー管理されている前記イベントのイベント種別及びパラメータを検出し、
    前記イベント削除手段は、前記停止状態検出手段が前記アプリケーション実行環境の停止状態を検出すると、前記新規イベント検出手段により新規にイベントを検出したときに、前記イベント種別検出手段により検出された前記イベントのイベント種別及びパラメータを参照して、前記キュー管理手段により前記キューに格納されているイベントのうち、前記新規に発生したイベントのイベント種別及びパラメータと同じイベント種別及びパラメータのイベントを不要イベントとして削除することを特徴とする請求項1に記載のイベントキュー管理装置。
  3. 前記キュー管理手段は、前記イベント削除手段により前記不要イベントが削除された後、前記新規に発生したイベントを前記キューの最後尾に追加格納することを特徴とする請求項1又は2に記載のイベントキュー管理装置。
  4. イベントが発生すると、イベント種別に応じて設けられた複数のイベントハンドラが前記イベントを受け取ってアプリケーション実行環境において動作するアプリケーションに通知する移動機において、前記イベントのキュー管理を行うイベントキュー管理方法であって、
    発生したイベントをキューに格納して前記イベントのキュー管理を行うキュー管理ステップと、
    前記キュー管理ステップによりキュー管理されている前記イベントのイベント種別を検出するイベント種別検出ステップと、
    前記イベントハンドラが前記イベントを受け取ることができない前記アプリケーション実行環境の停止状態を検出する停止状態検出ステップと、
    新規のイベントの発生を検出する新規イベント検出ステップと、
    前記停止状態検出ステップで前記アプリケーション実行環境の停止状態を検出すると、前記新規イベント検出ステップにより新規にイベントを検出したときに、前記イベント種別検出ステップにより検出された前記イベントのイベント種別を参照して、前記キュー管理ステップにより前記キューに格納されているイベントのうち、前記新規に発生したイベントのイベント種別と同じイベント種別のイベントを不要イベントとして削除するイベント削除ステップと、
    を有し、
    前記キュー管理ステップは、前記イベント削除ステップにより前記不要イベントが削除された後、前記新規に発生したイベントを前記キューに追加格納することを特徴とするイベントキュー管理方法。
JP2008280251A 2008-10-30 2008-10-30 イベントキュー管理装置及びイベントキュー管理方法 Expired - Fee Related JP4729611B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2008280251A JP4729611B2 (ja) 2008-10-30 2008-10-30 イベントキュー管理装置及びイベントキュー管理方法
EP09823608A EP2352089A4 (en) 2008-10-30 2009-10-28 DEVICE AND METHOD FOR MANAGING THE QUEUE OF EXPECTED EVENTS
CN200980143279.6A CN102203738B (zh) 2008-10-30 2009-10-28 事件队列管理装置和事件队列管理方法
PCT/JP2009/068481 WO2010050498A1 (ja) 2008-10-30 2009-10-28 イベントキュー管理装置及びイベントキュー管理方法
US13/126,580 US8539509B2 (en) 2008-10-30 2009-10-28 Event queue managing device and event queue managing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008280251A JP4729611B2 (ja) 2008-10-30 2008-10-30 イベントキュー管理装置及びイベントキュー管理方法

Publications (2)

Publication Number Publication Date
JP2010108294A JP2010108294A (ja) 2010-05-13
JP4729611B2 true JP4729611B2 (ja) 2011-07-20

Family

ID=42128858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008280251A Expired - Fee Related JP4729611B2 (ja) 2008-10-30 2008-10-30 イベントキュー管理装置及びイベントキュー管理方法

Country Status (5)

Country Link
US (1) US8539509B2 (ja)
EP (1) EP2352089A4 (ja)
JP (1) JP4729611B2 (ja)
CN (1) CN102203738B (ja)
WO (1) WO2010050498A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8788863B2 (en) 2011-08-10 2014-07-22 Microsoft Corporation System and method for restoring and/or continuing execution functionality to various processes based on predefined power classifications while transitioning a computing environment from connected standby state to execution state
US9588576B2 (en) 2011-09-12 2017-03-07 Microsoft Technology Licensing, Llc Managing processes within suspend states and execution states
US9952897B2 (en) * 2011-09-12 2018-04-24 Microsoft Technology Licensing, Llc Managing processes within suspend states and execution states
CN103095932B (zh) * 2011-11-01 2014-10-22 北京瓦力网络科技有限公司 一种移动终端省电的方法和装置
US8904451B2 (en) * 2012-04-13 2014-12-02 Theplatform, Llc Systems for prioritizing video processing events based on availability of media file and agent to process the event type
JP6459654B2 (ja) * 2014-11-07 2019-01-30 富士通株式会社 イベントドリブンシステム、情報処理装置、イベントドリブンプログラムおよびイベントドリブン方法
JP6501632B2 (ja) * 2015-06-05 2019-04-17 キヤノン株式会社 情報処理システム、およびその制御方法
CN105872676A (zh) * 2015-12-21 2016-08-17 乐视致新电子科技(天津)有限公司 操作指令的执行方法及装置
EP3392780A3 (en) * 2017-04-19 2018-11-07 Tata Consultancy Services Limited Systems and methods for classification of software defect reports
CN110083626B (zh) * 2019-03-29 2021-08-31 奇安信科技集团股份有限公司 流式事件序列匹配方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005102133A (ja) * 2003-04-28 2005-04-14 Ricoh Co Ltd 画像形成装置及び宛先情報参照方法
JP2006163612A (ja) * 2004-12-03 2006-06-22 Kyocera Corp 携帯電話端末、イベント管理方法並びにそのコンピュータプログラム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04345248A (ja) 1991-05-23 1992-12-01 Matsushita Electric Ind Co Ltd イベント報告装置
JPH05327979A (ja) * 1991-08-23 1993-12-10 Fujitsu Ltd ファクシミリ通信システム
JPH08204756A (ja) 1995-01-25 1996-08-09 Fuji Electric Co Ltd サイクリックデータ転送システム
US5721825A (en) 1996-03-15 1998-02-24 Netvision, Inc. System and method for global event notification and delivery in a distributed computing environment
JP3550890B2 (ja) * 1996-06-17 2004-08-04 株式会社高岳製作所 イベント送受信方法及び装置
US5961650A (en) * 1997-07-09 1999-10-05 International Business Machines Corporation Scheme to perform event rollup
JP2000207234A (ja) 1999-01-08 2000-07-28 Mitsubishi Electric Corp 通信システム
US7657450B2 (en) * 2000-12-08 2010-02-02 Microsoft Corporation Reliable, secure and scalable infrastructure for event registration and propagation in a distributed enterprise
US20030014558A1 (en) * 2001-05-21 2003-01-16 Kyushu University Batch interrupts handling device, virtual shared memory and multiple concurrent processing device
US7594182B2 (en) * 2001-10-12 2009-09-22 National Insturments Corporation Dynamic and user-defined events for a graphical program
JP2003285285A (ja) * 2002-03-27 2003-10-07 Nec Corp ソフトウェアエージェントを有するロボット装置及びその制御方法とプログラム
US7962545B2 (en) * 2002-12-27 2011-06-14 Intel Corporation Dynamic service registry for virtual machines
JP2004287755A (ja) 2003-03-20 2004-10-14 Matsushita Electric Ind Co Ltd イベント制御装置
JP4205980B2 (ja) * 2003-03-28 2009-01-07 株式会社エヌ・ティ・ティ・ドコモ 端末装置およびプログラム
JP4601983B2 (ja) 2004-03-30 2010-12-22 京セラ株式会社 携帯電話端末装置及びプログラム管理方法並びにそのコンピュータプログラム
JP2007048094A (ja) * 2005-08-10 2007-02-22 Toshiba Corp プラン実行装置、プラン実行方法およびプラン実行プログラム
JP4186121B2 (ja) * 2005-08-19 2008-11-26 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
US8458725B2 (en) * 2006-04-10 2013-06-04 Oracle International Corporation Computer implemented method for removing an event registration within an event notification infrastructure
JP4771431B2 (ja) * 2007-09-20 2011-09-14 Kddi株式会社 オペレーティングシステムに基づくイベント処理機能搭載装置及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005102133A (ja) * 2003-04-28 2005-04-14 Ricoh Co Ltd 画像形成装置及び宛先情報参照方法
JP2006163612A (ja) * 2004-12-03 2006-06-22 Kyocera Corp 携帯電話端末、イベント管理方法並びにそのコンピュータプログラム

Also Published As

Publication number Publication date
CN102203738A (zh) 2011-09-28
US20110265099A1 (en) 2011-10-27
US8539509B2 (en) 2013-09-17
JP2010108294A (ja) 2010-05-13
EP2352089A4 (en) 2012-05-30
CN102203738B (zh) 2014-06-04
WO2010050498A1 (ja) 2010-05-06
EP2352089A1 (en) 2011-08-03

Similar Documents

Publication Publication Date Title
JP4729611B2 (ja) イベントキュー管理装置及びイベントキュー管理方法
US20200133750A1 (en) Methods, apparatus and computer programs for managing persistence
CN109743358B (zh) 异步消息接口熔断控制方法、装置、计算机设备及存储介质
EP2826212B1 (en) High density hosting for messaging service
CN109388504B (zh) 消息化对接处理方法、装置、计算机设备及存储介质
US8756613B2 (en) Scalable, parallel processing of messages while enforcing custom sequencing criteria
CN107786623B (zh) 消息异步处理方法和装置
CN109918141A (zh) 线程执行方法、装置、终端及存储介质
CN101350795A (zh) 信息通知设备及方法
CN108021434A (zh) 数据处理装置及其处理数据的方法、介质、存储控制器
CN109766198B (zh) 流式处理方法、装置、设备及计算机可读存储介质
CN110399576B (zh) 页面切换方法、装置、可读介质及电子设备
CN111831414A (zh) 线程迁移方法、装置、存储介质及电子设备
CN112667382A (zh) 任务调度方法、装置、设备及存储介质
CN111813520A (zh) 线程调度方法、装置、存储介质及电子设备
JP5880564B2 (ja) 割込監視装置、およびコンピュータシステム
CN106250229A (zh) 事件处理的方法及装置
CN107391274A (zh) 离线消息的处理方法及装置
CN106933681A (zh) 一种多对象阻塞方法及其系统
CN113835859B (zh) 一种任务调度方法、装置、设备及可读存储介质
CN111831409B (zh) 线程调度方法、装置、存储介质及电子设备
CN109857720B (zh) 数据库表监控方法、装置、计算机装置及可读存储介质
CN106873474B (zh) 一种机电系统控制方法及装置
CN219678497U (zh) 即时通信检测装置、预警装置及通信系统
CN113347116B (zh) QoS调度延迟抖动处理方法及装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100401

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110318

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110405

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110418

R150 Certificate of patent or registration of utility model

Ref document number: 4729611

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees