JP6205812B2 - プログラム及び通信抑制方法 - Google Patents

プログラム及び通信抑制方法 Download PDF

Info

Publication number
JP6205812B2
JP6205812B2 JP2013084731A JP2013084731A JP6205812B2 JP 6205812 B2 JP6205812 B2 JP 6205812B2 JP 2013084731 A JP2013084731 A JP 2013084731A JP 2013084731 A JP2013084731 A JP 2013084731A JP 6205812 B2 JP6205812 B2 JP 6205812B2
Authority
JP
Japan
Prior art keywords
communication
requesting
processing
simultaneous connection
recording
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
JP2013084731A
Other languages
English (en)
Other versions
JP2014206899A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2013084731A priority Critical patent/JP6205812B2/ja
Priority to US14/247,996 priority patent/US20140310716A1/en
Publication of JP2014206899A publication Critical patent/JP2014206899A/ja
Application granted granted Critical
Publication of JP6205812B2 publication Critical patent/JP6205812B2/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、プログラム及び通信抑制方法に関する。
例えばエンドサーバのサービス時間に基づいて各ユーザ端末からエンドサーバへのアクセスタイミングを正確に制御することでアクセス集中を緩和する自立型アクセス集中緩和システムは従来から知られている(例えば特許文献1参照)。
モジュール間で行われる通信では、同時に通信できる数(通信の口の数)が制限される場合がある。しかしながら、通信の口の数が制限されている場合は、完了までに時間の掛かる処理を依頼する通信がモジュール間において通信の口の数以上発生すると、後の処理が正常に行われないことがあるという問題があった。
本発明の一実施形態は上記の点に鑑みなされたもので、完了までに時間の掛かる処理を依頼する通信が同時に発生する数を抑制できるプログラム及び通信抑制方法を提供することを目的とする。
上記目的を達成するため、本願請求項1は、コンピュータを、完了までの時間が長い第1の処理を依頼する通信と完了までの時間が前記第1の処理よりも短い第2の処理を依頼する通信とが行われる通信の発信元において、前記第1の処理を依頼する通信が行われているか否かの情報を記録する記録手段、前記通信の発信元と受信先とにおいて、同時に通信できる数が制限されている場合に前記発信元側で前記第2の処理を依頼する通信が少なくとも一つ行えるように前記記録手段に記録されている前記情報を参照して前記第1の処理を依頼する通信の数を抑制する同時接続抑制手段、として機能させるためのプログラムであることを特徴とする。
本発明の一実施形態によれば、完了までに時間の掛かる処理を依頼する通信が同時に発生する数を抑制できる。
コンピュータシステムの一例のハードウェア構成図である。 GUIアプリを起動させたコンピュータシステムの一例の処理ブロック図である。 モジュール間で行われる通信の一例を表したシーケンス図である。 同時接続抑制処理の一例を説明する図である。 通信の種類による同時接続抑制処理の有無の一例を説明する図である。 通信の種類による同時接続抑制処理の有無の他の例を説明する図である。 通信の種類による同時接続抑制処理の有無の他の例を説明する図である。 UIモジュール及びサービスモジュールの一例の処理ブロック図である。 同時接続抑制処理の一例のフローチャートである。 同時接続抑制処理の一例のシーケンス図である。
次に、本発明を実施するための形態を以下の実施形態に基づき図面を参照しつつ説明していく。以下の説明におけるGUI(Graphical User Interface)アプリケーションプログラムは本発明を理解しやすくするためのものである。本発明はGUIアプリケーションプログラムに限定されるものではない。
[第1の実施形態]
GUIアプリケーションプログラムは、例えば図1に示すようなハードウェア構成のコンピュータシステム上で動作する。
図1はコンピュータシステムの一例のハードウェア構成図である。コンピュータシステム500は、入力装置501、表示装置502、外部I/F503、RAM504、ROM505、CPU506、通信I/F507、及びHDD508などを備え、それぞれがバスBで相互に接続されている。
入力装置501はキーボードやマウス、タッチパネルなどを含み、ユーザが各操作信号を入力するのに用いられる。表示装置502はディスプレイ等を含み、コンピュータシステム500による処理結果を表示する。
通信I/F507はコンピュータシステム500をネットワーク(図示せず)に接続するインタフェースである。これにより、コンピュータシステム500は通信I/F507を介してデータ通信を行うことができる。
HDD(Hard Disk Drive)508はプログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、例えばコンピュータシステム500全体を制御する基本プログラムであるOS(Operating System)や、OS上において各種機能を提供するアプリケーションプログラムなどがある。HDD508は格納しているプログラムやデータを所定のファイルシステム及び/又はDB(データベース)により管理している。
外部I/F503は、外部装置とのインタフェースである。外部装置には、記録媒体503aなどがある。これにより、コンピュータシステム500は外部I/F503を介して記録媒体503aの読み取り及び/又は書き込みを行うことができる。
記録媒体503aには、例えばフレキシブルディスク、CD(Compact Disk)、DVD(Digital Versatile Disk)等がある。記録媒体503aにはSD(Secure Digital)メモリカード、USB(Universal Serial Bus)メモリなどがある。
ROM(Read Only Memory)505は電源を切ってもプログラムやデータを保持できる不揮発性の半導体メモリ(記憶装置)である。ROM505にはコンピュータシステム500の起動時に実行されるBIOS(Basic Input/Output System)、OS設定及びネットワーク設定などのプログラムやデータが格納されている。
RAM(Random Access Memory)504は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。CPU(Central Processing Unit)506はROM505やHDD508などの記憶装置からプログラムやデータをRAM504上に読み出し、処理を実行することで、コンピュータシステム500全体の制御や機能を実現する演算装置である。
このようなコンピュータシステム500のハードウェア構成上で動作させることによりGUIアプリケーションプログラム(以下、単にGUIアプリと呼ぶ)は、後述するような各種処理を実現できる。
コンピュータシステム500はGUIアプリにより例えば図2に示す処理ブロックを実現する。図2はGUIアプリを起動させたコンピュータシステムの一例の処理ブロック図である。
図1のコンピュータシステム500はGUIアプリを実行することで、UIモジュール11とサービスモジュール12とを実現する。なお、図2の処理ブロックは本実施形態の説明に不要な部分について省略している。UIモジュール11とサービスモジュール12とはモジュール間で通信を行うモジュールの一例である。
UIモジュール11は設定項目やサムネイルなどの画面の表示と、サービスモジュール12へ設定結果の反映を依頼する処理とを行う。サービスモジュール12は画面の表示以外の内部処理として、同時に設定不可な設定項目の管理やファイルの入出力等を行う。
なお、UIモジュール11とサービスモジュール12との間で処理の依頼、処理結果の通知等のやり取りを行う際には、HTTP通信などの通信が発生する。UIモジュールとサービスモジュール12との通信の口の数は2本という制限があるものとする。
通信の口の数の制限は、例えば通信に使用する通信コンポーネント(例えばWinInet)側の制限により発生する。WinInetは、OSの一例のWindows(登録商標)が内蔵するコンポーネントの一つであり、プログラムからHTTP通信などの通信を行うための通信コンポーネントである。
図3はモジュール間で行われる通信の一例を表したシーケンス図である。図3に示した通信はGUIアプリにサムネイルを表示するために必要な処理である。UIモジュール11は画面の初期化処理や画面のスクロール等が発生すると、ステップS1において、サムネイルの作成依頼をサービスモジュール12に対して行う。また、ステップS2においてUIモジュール11はサムネイルの画像データ取得依頼をサービスモジュール12に対して行う。
ステップS1及びS2に示した2種類の通信は、完了までに時間の掛かる処理を依頼する通信の一例である。本実施形態のGUIアプリではサムネイルの作成依頼やサムネイルの画像データ取得依頼などの完了までに時間の掛かる処理を依頼する通信について、後述の同時接続抑制処理を行う。
図4は同時接続抑制処理の一例を説明する図である。図4ではGUIアプリにおいて2つのジョブ(ジョブ1、ジョブ2)を想定し、同時接続抑制処理が行われている状態を示している。図4においてジョブはGUIアプリで使用する原稿や編集した内容などを保存するファイルである。図4では先にジョブ1がサムネイル作成を依頼した後、サムネイルの作成が完了する前に、ジョブ2でもサムネイル作成を依頼する必要が生じた例を示している。
ステップS11において、UIモジュール11はジョブ1のサムネイル作成依頼を行う通信をサービスモジュール12に対して実行する。UIモジュール11はステップS12において、ジョブ2のサムネイル作成依頼を行う必要が生じている。しかし、ジョブ1のサムネイル作成依頼の処理が完了していないため、UIモジュール11はジョブ2のサムネイル作成依頼を行う通信を実行せず、一定時間(例えば1ミリ秒)待機する。
なお、一定時間待機後、ジョブ1のサムネイル作成依頼の処理が完了していない場合には更に一定時間待機する。ステップS12の処理が同時接続抑制処理となる。ステップS13において、サービスモジュール12はジョブ1のサムネイル作成が完了する。サービスモジュール12はジョブ1のサムネイル作成が完了した結果をUIモジュール11に通知する。
ステップS14において、UIモジュール11はジョブ2のサムネイル作成依頼を行う通信をサービスモジュール12に対して実行する。ステップS15において、サービスモジュール12はジョブ2のサムネイル作成が完了する。サービスモジュール12はジョブ2のサムネイル作成が完了した結果をUIモジュール11に通知する。
図5は通信の種類による同時接続抑制処理の有無の一例を説明する図である。図5ではUIモジュール11とサービスモジュール12との間で通信を行う通信の口21を斜線により視覚的に表している。図5では上側の通信の口21において同時接続抑制処理を行うものとする。同時接続抑制処理を行う通信の口21は上側でも下側でも良い。
完了までに時間の掛かる(完了までの時間が長い)処理(例えばサムネイルを表示するために必要な処理)を依頼する通信は、同時接続抑制処理を行う上側の通信の口21が使用される。また、完了までに時間の掛からない(完了までの時間が短い)処理(例えばステープルの設定を行う処理)を依頼する通信は、同時接続抑制処理を行わない下側の通信の口21が使用される。
図5において、例えばUIモジュール11とサービスモジュール12との間でサムネイル作成依頼A、サムネイル作成依頼B、ステープルの設定依頼が発生したとする。サムネイル作成依頼A及びサムネイル作成依頼Bは同時接続抑制処理を行う上側の通信の口21を使用して通信される。また、ステープルの設定依頼は同時接続抑制処理を行わない下側の通信の口21を使用して通信される。
このように、UIモジュール11は完了までに時間の掛からない処理の通信が発生した場合を考慮し、少なくとも一つの通信の口(下側の通信の口)21を空けておくように完了までに時間の掛かる処理の通信を他の通信の口(上側の通信の口)21で行う。
図6は通信の種類による同時接続抑制処理の有無の他の例を説明する図である。図6でもUIモジュール11とサービスモジュール12との間で通信を行う通信の口21を斜線により視覚的に表している。図6では上側の2本の通信の口21において同時接続抑制処理を行うものとする。同時接続抑制処理を行う通信の口21は3本の通信の口21の何れか2本であればよい。
なお、図6では通信の口が3本の例を示しているが4本以上であってもよい。通信の口21が4本以上である場合は同時接続抑制処理を行う通信の口21の本数は、通信の口21の本数から1を引いた本数となる。
完了までに時間の掛かる処理を依頼する通信は、同時接続抑制処理を行う上側の2本の通信の口21が使用される。また、完了までに時間の掛からない処理を依頼する通信は同時接続抑制処理を行わない下側の1本の通信の口21が使用される。
図6において、例えばUIモジュール11とサービスモジュール12との間でサムネイル作成依頼A、サムネイル作成依頼B、ステープルの設定依頼が発生したとする。サムネイル作成依頼A及びサムネイル作成依頼Bは同時接続抑制処理を行う上側の2本の通信の口21を使用して通信される。また、ステープルの設定依頼は同時接続抑制処理を行わない下側の1本の通信の口21を使用して通信される。
このように、UIモジュール11は完了までに時間の掛からない処理の通信が発生した場合を考慮し、少なくとも一つの通信の口21を空けておくように完了までに時間の掛かる処理の通信を通信の口21の本数から1を引いた本数分だけ使用して行う。
図7は通信の種類による同時接続抑制処理の有無の他の例を説明する図である。図7でもUIモジュール11とサービスモジュール12との間で通信を行う通信の口21を斜線により視覚的に表している。図7では上側の通信の口21において同時接続抑制処理を行うものとする。同時接続抑制処理を行う通信の口21は上側でも下側でも良い。
完了までに時間の掛かる処理(例えばサムネイルを表示するために必要な処理であるサムネイルの作成及びサムネイルの画像データ取得)を依頼する通信は、同時接続抑制処理を行う上側の通信の口21が使用される。また、完了までに時間の掛からない処理(例えばステープルの設定を行う処理)を依頼する通信は、同時接続抑制処理を行わない下側の通信の口21が使用される。
図7において、例えばUIモジュール11とサービスモジュール12との間でサムネイル作成依頼A、サムネイル作成依頼B、ステープルの設定依頼、サムネイルの画像データ取得依頼Aが発生したとする。サムネイル作成依頼A、サムネイル作成依頼B及びサムネイルの画像データ取得依頼Aは同時接続抑制処理を行う上側の通信の口21を使用して通信される。また、ステープルの設定依頼は同時接続抑制処理を行わない下側の通信の口21を使用して通信される。
このように、UIモジュール11は完了までに時間の掛からない処理の通信が発生した場合を考慮し、少なくとも一つの通信の口(下側の通信の口)21を空けておくように完了までに時間の掛かる処理の通信を他の通信の口(上側の通信の口)21で行う。
図8はUIモジュール及びサービスモジュールの一例の処理ブロック図である。図8のUIモジュール11は、発信元31、同時接続抑制部32、記録部33、タイマ部34を有する構成である。サービスモジュール12は受信先41を有する構成である。
発信元31は通信を行う際に、通信を発信する。同時接続抑制部32は同時接続を抑制する必要がある通信に対し、通信の実行状況などの情報を用い、通信を実行するか、待機するか、キャンセルするか、を判定する。記録部33は同時接続抑制処理を行うために必要な情報を記録する。タイマ部34は、一定(所定)時間をカウント(計時)する。タイマ部34は、通信を実行するか、待機するか、キャンセルするか、を判定する処理を一定時間待機するために利用される。また、受信先41は通信を行う際に通信を受信する。
図9は同時接続抑制処理の一例のフローチャートである。図9のフローチャートはサムネイル作成/データ取得依頼があると開始される。サムネイル作成/データ取得依頼は画面の初期化(更新)処理や画面のスクロール等により発生する。サムネイル作成/データ取得依頼は前述したサムネイル作成依頼とサムネイルの画像データ取得依頼とに対応するものである。また、図9のフローチャートの処理において、記録部33に記録されるサムネイル取得フラグ(サムネイル作成/データ取得依頼のフラグ)とサムネイル取得(サムネイル作成/データ取得依頼)の発信元情報とが、共通の情報として使用される。
発信元31からサムネイル作成/データ取得依頼があると、同時接続抑制部32は図9のフローチャートの処理を開始する。ステップS21において、同時接続抑制部32は別のサムネイル作成/データ取得依頼中であるかを判定する。
別のサムネイル作成/データ取得依頼中でなければ、同時接続抑制部32はステップS22の処理に進み、処理を継続する。一方、別のサムネイル作成/データ取得依頼中であれば、同時接続抑制部32はステップS31の処理に進み、処理を待機させる。
別のサムネイル作成/データ取得依頼中でなければ、同時接続抑制部32はステップS22の処理に進み、既にサムネイル作成/データ取得依頼中であることを示すため、サムネイル作成/データ取得依頼のフラグを「true」に設定する。
ステップS23において、同時接続抑制部32は別のサムネイル作成/データ取得依頼によってタイマが開始されていれば、タイマを破棄する。ステップS24において、同時接続抑制部32は、既にサムネイル作成/データ取得依頼中であることを示すため、サムネイル作成/データ取得依頼の発信元情報を、通信を実行するサムネイル作成/データ取得依頼のものに書き替える。発信元情報はそれぞれのサムネイル作成/データ取得依頼で一意である。ステップS25において、UIモジュール11の発信元31はサービスモジュール12の受信先41に対し、サムネイル作成/データ取得依頼を行うための通信を実行する。
サムネイル作成/データ取得依頼を行うための通信が完了すると、同時接続抑制部32はステップS26に進む。ステップS26において、同時接続抑制部32はサムネイル作成/データ取得依頼中でないことを示すため、サムネイル作成/データ取得依頼のフラグを「false」に設定する。ステップS27に進み、同時接続抑制部32はサムネイル作成/データ取得依頼の通信の結果に対し、成功/失敗それぞれで処理を実行し、サムネイル作成/データ取得依頼を完了させる。
一方、別のサムネイル作成/データ取得依頼中であれば、同時接続抑制部32はサムネイル作成/データ取得依頼を一旦待機(待機中に)させるための処理を実行する。ステップS31の処理に進み、同時接続抑制部32は現在実行されている通信の後にサムネイル作成/データ取得依頼を行うため、サムネイル作成/データ取得依頼の発信元情報を、待機するサムネイル作成/データ取得依頼のものに書き替える。
ステップS32において、同時接続抑制部32は別のサムネイル作成/データ取得依頼によってタイマが作成されていれば、タイマを破棄する。ステップS33において、同時接続抑制部32はタイマを開始して一定時間(例えば1ミリ秒)待機する。一定時間が経過した後、同時接続抑制部32はステップS34において、サムネイル作成/データ取得依頼の発信元情報が、待機するサムネイル作成/データ取得依頼のものと同一であるかを判定する。
同一であれば、同時接続抑制部32はステップS21に戻り、処理を続ける。同一でなければ、同時接続抑制部32はステップS33で開始したタイマをステップS35において破棄し、サムネイル作成/データ取得依頼をキャンセルさせる。
図9のフローチャートは、後から発信されたサムネイル作成/データ取得依頼を優先させることを前提としている。本実施形態はサムネイルを表示するために必要な処理を一例として示しているが、一旦必要となったサムネイルがユーザのスクロール操作などにより不要となり、新たなサムネイルが必要となることに対応させている。
なお、図9のフローチャートの処理ではサムネイル作成/データ取得依頼のフラグとサムネイル作成/データ取得依頼の発信元情報とを使用する例を説明したが、サムネイル作成/データ取得依頼のフラグを省略することもできる。サムネイル作成/データ取得依頼のフラグを省略する場合は、サムネイル作成/データ取得依頼の発信元情報にサムネイル作成/データ取得依頼のフラグの役割を持たせるようにすればよい。
図10は同時接続抑制処理の一例のシーケンス図である。なお、図10のシーケンス図ではステップS51〜S52と、ステップS53〜S58の処理と、ステップS61〜S67の処理と、分類できる。そこで、以下ではステップS51〜S52と、ステップS53〜S58の処理と、ステップS61〜S67の処理と、に分けて説明する。
ステップS51〜S52は発信元31からの通信開始要求が発生したときの処理の一例である。ステップS51において、発信元31は同時接続抑制部32に対し、通信開始要求が行われる。ステップS52において、同時接続抑制部32は他の発信元が通信中であるか否かを判定するため、記録部33に対し、通信実行中か否かを示すフラグの値を要求する。
同時接続抑制部32は通信実行中か否かを示すフラグの値により、通信実行中か否かを判定する。通信実行中であれば、同時接続抑制部32はステップS53〜S58の処理を行う。また、通信実行中でなければ、同時接続抑制部32はステップS61〜S67の処理を行う。
ステップS53〜S58の処理は通信実行を一旦待機するための処理の一例である。ステップS53において、同時接続抑制部32は通信実行を一旦待機するために、通信開始要求を行った発信元31の情報を、通信開始要求の発信元情報として記録部33に記録させる。
起動済みのタイマがれば、同時接続抑制部32はステップS54において、タイマを破棄する。ステップS55において、同時接続抑制部32はタイマを起動して一定時間待機する。一定時間経過後、同時接続抑制部32はステップS56において、記録部33に現在記録されている通信開始要求の発信元情報を確認する。
記録部33に現在記録されている通信開始要求の発信元情報が待機当初の発信元情報と同一であれば、同時接続抑制部32はステップS52の処理に戻る。一方、同時接続抑制部32は記録部33に現在記録されている通信開始要求の発信元情報が待機当初の発信元情報と同一でなければ以降の処理を行わずに終了し、通信開始要求をキャンセルする。
ステップS61〜S67の処理は通信を実行するための処理の一例である。ステップS61において、同時接続抑制部32は通信を実行するために、記録部33に対し、通信実行中か否かを示すフラグを「true」に設定し、通信中であることを記録するように要求する。
ステップS62において、同時接続抑制部32は、これから通信を行う発信元31の情報を通信開始要求の発信元情報として記録するように記録部33に対し要求する。同時接続抑制部32は通信実行中か否かを示すフラグと、通信開始要求の発信元情報とを記録したことを発信元31に通知する。
ステップS63において、発信元31は受信先41に対し通信を開始する。通信を受信した受信先41はステップS64において定められた処理を実行する。ステップS64の処理後、受信先41は通信終了を同時接続抑制部32に通知する。
同時接続抑制部32は通信終了が通知されるとステップS66において、記録部33に対し、通信実行中か否かを示すフラグを「false」に設定し、通信中でないことを記録するように要求する。また、同時接続抑制部32はステップS67において、通信の結果を発信元31に対して通知する。
<まとめ>
従来のGUIアプリにおいて、通信の口の数の制限をそのままにして通信を行うと以下のような問題があった。例えばUIモジュール11からサービスモジュール12に対して完了までに時間の掛かる処理を依頼する通信が2本発生したあと、更に通信が発生した場合は、最後に発生した通信がタイムアウトする恐れや、正常に行われない恐れがあった。
そこで、本実施形態では、サムネイルの作成依頼やサムネイルの画像データ取得依頼などの一種類以上の「完了までに時間の掛かる処理を依頼する通信」に対し、同時接続抑制処理を行うようにしている。
したがって、本実施形態では発信元側から受信先側への通信において、完了までに時間の掛かる恐れのある一種類以上の通信に対し、同時に発生する通信の数を抑制して、完了までに時間の掛からない処理がタイムアウトする状況を避けることができる。また、本実施形態では完了までに時間の掛かる恐れのある一種類以上の通信に対し、同時に発生する通信の数を抑制して、完了までに時間の掛からない処理が正常に行われなくなる状況を避けることができる。
また、本実施形態は発信元側から受信先側への実際の通信が発生する前に、完了までに時間が掛かる処理について、同時に発生する通信の数を抑制することで、通信の集中を緩和して、通信エラーを避けることができる。また、本実施形態では完了までに時間の掛かる処理を依頼する複数種類の通信に対応できる。
本発明は具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
11 UIモジュール
12 サービスモジュール
21 通信の口
31 発信元
32 同時接続抑制部
33 記録部
34 タイマ部
41 受信先
500 コンピュータシステム
501 入力装置
502 表示装置
503 外部I/F
503a 記録媒体
504 RAM
505 ROM
506 CPU
507 通信I/F
508 HDD
B バス
特開2010−231353号公報

Claims (7)

  1. コンピュータを、
    完了までの時間が長い第1の処理を依頼する通信と完了までの時間が前記第1の処理よりも短い第2の処理を依頼する通信とが行われる通信の発信元において、前記第1の処理を依頼する通信が行われているか否かの情報を記録する記録手段、
    前記通信の発信元と受信先とにおいて、同時に通信できる数が制限されている場合に前記発信元側で前記第2の処理を依頼する通信が少なくとも一つ行えるように前記記録手段に記録されている前記情報を参照して前記第1の処理を依頼する通信の数を抑制する同時接続抑制手段、
    として機能させるためのプログラム。
  2. 前記同時接続抑制手段は、前記第1の処理を依頼する通信を行う前に、前記記録手段に記録されている前記情報を参照して前記第1の処理を依頼する別の通信が行われているか否かを判定し、前記第1の処理を依頼する別の通信が行われていないと判定すると、前記記録手段に記録されている前記情報を前記第1の処理を依頼する通信が行われていることを表すように更新したあと、前記第1の処理を依頼する通信を前記発信元に行わせること
    を特徴とする請求項1記載のプログラム。
  3. 前記同時接続抑制手段は、前記第1の処理を依頼する別の通信が行われていると判定すると、前記別の通信が終了するまで前記第1の処理を依頼する通信を待機させること
    を特徴とする請求項2記載のプログラム。
  4. 前記記録手段は、更に、待機中の前記第1の処理を依頼する通信を表す発信元情報を記録しており、
    前記同時接続抑制手段は、前記第1の処理を依頼する別の通信が行われていると判定すると、前記記録手段に記録されている前記発信元情報を、新たに発生した前記第1の処理を依頼する通信が待機中の前記第1の処理を依頼する通信となるように書き替えること
    を特徴とする請求項3記載のプログラム。
  5. 所定時間を計時するタイマ手段として更に機能させ、
    前記同時接続抑制手段は、前記記録手段に記録されている前記発信元情報を、新たに発生した前記第1の処理を依頼する通信が待機中の前記第1の処理を依頼する通信となるように書き替えたあと、前記タイマ手段により所定時間が計時されると、前記記録手段に記録されている前記発信元情報を参照して、待機中の前記第1の処理を依頼する通信のうち前記発信元情報に記録されていない前記第1の処理を依頼する通信をキャンセルすること
    を特徴とする請求項4記載のプログラム。
  6. 前記第1の処理を依頼する通信はサムネイルの作成依頼を行う通信と、サムネイルの画像データ取得依頼を行う通信と、を含むこと
    を特徴とする請求項1乃至5何れか一項記載のプログラム。
  7. コンピュータによって実行される通信抑制方法であって、
    完了までの時間が長い第1の処理を依頼する通信と完了までの時間が前記第1の処理よりも短い第2の処理を依頼する通信とが行われる通信の発信元において、前記第1の処理を依頼する通信が行われているか否かの情報を記録手段に記録する記録ステップと、
    前記通信の発信元と受信先とにおいて、同時に通信できる数が制限されている場合に前記発信元側で前記第2の処理を依頼する通信が少なくとも一つ行えるように前記記録手段に記録されている前記情報を参照して前記第1の処理を依頼する通信の数を抑制する同時接続抑制ステップと、
    を有することを特徴とする通信抑制方法。
JP2013084731A 2013-04-15 2013-04-15 プログラム及び通信抑制方法 Expired - Fee Related JP6205812B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013084731A JP6205812B2 (ja) 2013-04-15 2013-04-15 プログラム及び通信抑制方法
US14/247,996 US20140310716A1 (en) 2013-04-15 2014-04-08 Communication control method and recording

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013084731A JP6205812B2 (ja) 2013-04-15 2013-04-15 プログラム及び通信抑制方法

Publications (2)

Publication Number Publication Date
JP2014206899A JP2014206899A (ja) 2014-10-30
JP6205812B2 true JP6205812B2 (ja) 2017-10-04

Family

ID=51687715

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013084731A Expired - Fee Related JP6205812B2 (ja) 2013-04-15 2013-04-15 プログラム及び通信抑制方法

Country Status (2)

Country Link
US (1) US20140310716A1 (ja)
JP (1) JP6205812B2 (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4172363B2 (ja) * 2003-09-08 2008-10-29 セイコーエプソン株式会社 印刷システム
JP2006093818A (ja) * 2004-09-21 2006-04-06 Denso Corp 車両用通信制御システム
JP2008068470A (ja) * 2006-09-13 2008-03-27 Kyocera Mita Corp 電子機器、ジョブデータ認証受信プログラム
JP4561804B2 (ja) * 2007-10-09 2010-10-13 ブラザー工業株式会社 サムネイル配信システム、サーバ、クライアント、およびプログラム
JP4582203B2 (ja) * 2008-06-06 2010-11-17 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、同装置における通信制御方法及び通信制御プログラム
JP5195552B2 (ja) * 2009-03-18 2013-05-08 富士電機株式会社 中継サーバを有するネットワークシステム、その中継サーバ、プログラム
JP5831324B2 (ja) * 2012-03-27 2015-12-09 富士通株式会社 制御装置,制御方法,プログラム及び分散処理システム
US20130332524A1 (en) * 2012-06-12 2013-12-12 Intermec Ip Corp. Data service on a mobile device
WO2014054079A1 (en) * 2012-10-05 2014-04-10 Hitachi, Ltd. Job management system and job control method
US9323588B2 (en) * 2013-03-14 2016-04-26 Comcast Cable Communications, Llc Service platform architecture

Also Published As

Publication number Publication date
US20140310716A1 (en) 2014-10-16
JP2014206899A (ja) 2014-10-30

Similar Documents

Publication Publication Date Title
US20130007488A1 (en) Power management of a storage device including multiple processing cores
US10585822B2 (en) Operation method of host system including storage device and operation method of storage device controller
EP2819016A1 (en) Storage controller, storage system, and control program
US20150248247A1 (en) Multi-mode hybrid storage drive
JP4829370B1 (ja) メモリ制御装置、メモリ装置および停止制御方法
JP6201298B2 (ja) コントローラおよびプログラム
US9219794B2 (en) Information processing apparatus and non-transitory computer readable medium storing information processing program
JP2016041470A (ja) 印刷装置、印刷装置に接続されたストレージの制御装置、印刷装置の制御方法及びプログラム
US9377966B2 (en) Method and apparatus for efficiently processing storage commands
JP5037117B2 (ja) プログラム及び表示制御方法
JP6205812B2 (ja) プログラム及び通信抑制方法
JP2009009323A (ja) 設定装置、電子機器、及び設定プログラム
TWI476693B (zh) 在電子裝置之多個作業系統間進行資訊交換之方法
WO2021082877A1 (zh) 访问固态硬盘的方法及装置
CN114253883A (zh) 一种endpoint设备访问方法、系统及endpoint设备
KR102181210B1 (ko) 저장 장치의 데이터 처리 방법 및 저장 장치
JP2008269335A (ja) データ転送集積回路およびデータ転送装置
US20140189164A1 (en) Memory bus attached input/output ('i/o') subsystem management in a computing system
JP2015158800A (ja) データ転送制御装置、データ転送制御プログラムおよびデータ転送制御方法
JP5907558B2 (ja) マルチインターバルタイマ並びにその制御装置、制御方法及び制御プログラム
JP6035189B2 (ja) 情報処理装置、デバイス自動実行試験方法、及びプログラム
JP2010026626A (ja) データを記録する方法、システム及びプログラム
CN116881091B (zh) 系统事件日志上报方法、装置、芯片、设备及存储介质
JP2009187337A (ja) デバイス制御方法、プログラム、制御回路及び電子機器
US20230033484A1 (en) Information processing apparatus, method, and non-transitory recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160404

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170411

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170518

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: 20170808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170821

R151 Written notification of patent or utility model registration

Ref document number: 6205812

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees