(57)【特許請求の範囲】
【請求項１】
情報処理装置が備えるコンピュータにおいて実行される情報処理プログラムであって、
前記コンピュータを、
一のアプリケーションにより実行される処理の実行単位であるスレッドであって、その一のアプリケーションの実行開始に応じてオペレーティングシステムにより起動され、且つ、入力部および表示部に関する制御が許可されている第１スレッドにおいて、複数の出力画像に対応するデータが含まれる処理対象データを受付部に受け付けさせる受付制御手段と、
その受付制御手段により処理対象データが受け付けられる場合に、前記第１スレッドから前記オペレーティングシステムに対して要求させ、その第１スレッドとは別に並行して処理が実行される前記スレッドであり、且つ、前記入力部および表示部に関する制御が制限されている第２スレッドを起動部に起動させる第２スレッド起動手段と、
その第２スレッド起動手段により起動される第２スレッドにおいて、前記処理対象データのうち、２以上の出力画像に対応するデータについて、その出力画像を表示させるための表示データを生成部に生成させる第２スレッドデータ生成手段と、
その第２スレッドデータ生成手段によって、所定数の出力画像を表示させるための表示データが生成された場合に、前記第２スレッドから前記第１スレッドに対して表示データの生成終了を通知部に通知させる通知制御手段と、
その通知制御手段による通知が前記第１スレッドへ通知された場合に、その第１スレッドにおいて、前記第２スレッドデータ生成手段により生成された表示データを用いて出力画像を表示部に表示させる表示制御手段と、して機能させることを特徴とする情報処理プログラム。
【請求項２】
前記コンピュータを、
前記処理対象データのうち、優先して処理すべきデータを、前記第１スレッドから前記第２スレッドに対して指示部に指示させる指示制御手段、として機能させ、
前記第２スレッドデータ生成手段は、
前記第２スレッドにおいて、前記指示制御手段により指示されるデータについて、その表示データを優先して生成部に生成させ、
前記通知制御手段は、
前記第２スレッドにおいて、前記指示制御手段により指示されるデータについて、その表示データの生成が終了した場合に、その第２スレッドから前記第１スレッドに対して表示データの生成終了を通知部に通知させる、請求項１記載の情報処理プログラム。
【請求項３】
前記コンピュータを、
前記第１スレッドにおいて、前記処理対象データのうち、一以上の出力画像全体に対応するデータにより構成され、且つ、総データ量が第１所定量以下である第１データについて、その出力画像を表示させるための表示データを生成部に生成させる第１スレッドデータ生成手段、として機能させ、
前記第２スレッドデータ生成手段は、
前記処理対象データから前記第１データを除いたデータについて、その出力画像を表示させるための表示データを前記第２スレッドにおいて生成部に生成させる、請求項１または２記載の情報処理プログラム。
【請求項４】
前記第２スレッド起動手段は、
前記第１スレッドデータ生成手段による表示データの生成が完了した後に、前記第２スレッドを起動部に起動させる、請求項３記載の情報処理プログラム。
【請求項５】
前記コンピュータを、
前記第１スレッドデータ生成手段または第２スレッドデータ生成手段により生成される表示データを記憶部に記憶させる記憶制御手段と、
前記処理対象データに対応する複数の出力画像のうち、その出力画像を表示させるための表示データが前記記憶部に記憶されていないものを出力画像単位で特定部に特定させる特定手段と、
前記処理対象データのうち、前記特定手段により特定される出力画像に対応するデータの累積量が前記第１所定量を超えない範囲で、前記特定手段に出力画像を特定させる特定制御手段と、して機能させ、
前記第１スレッドデータ生成手段は、
前記処理対象データのうち、前記特定手段により特定された出力画像に対応するデータについて、その出力画像を表示させるための表示データを第１スレッドにおいて生成部に生成させる、請求項３または４記載の情報処理プログラム。
【請求項６】
前記コンピュータを、
前記処理対象データから前記第１データを除いた残りのデータ量が第２所定量を超えるかを判定部に判定させる判定制御手段と、
その判定制御手段により第２所定量を超えると判定される場合に、前記第１スレッドから前記オペレーティングシステムに対して要求させ、その第１スレッドおよび前記第２スレッドとは別に並行して処理が実行される前記スレッドであり、且つ、前記入力部および表示部に関する制御が制限されている第３スレッドを起動部に起動させる第３スレッド起動手段と、して機能させ、
前記第２スレッドデータ生成手段は、
前記処理対象データから前記第１データを除いた残りのデータのうち、一以上の出力画像全体に対応するデータにより構成され、且つ、総データ量が前記第２所定量以下である第２データについて、その出力画像を表示させるための表示データを生成部に生成させ、
前記コンピュータを、
前記第３スレッド起動手段により起動される第３スレッドにおいて、前記処理対象データから前記第１データおよび第２データを除いた残りのデータについて、その出力画像を表示させるための表示データを生成部に生成させる第３スレッドデータ生成手段、として機能させることを特徴とする請求項３から５の何れかに記載の情報処理プログラム。
【請求項７】
前記コンピュータを、
前記第１スレッドにおいて、前記処理対象データのうち、データ形式がインターレース形式またはプログレッシブ形式の画像データについて、その出力画像を表示させるための表示データを生成部に生成させる第１スレッドデータ生成手段、として機能させ、
前記第２スレッドデータ生成手段は、
前記画像データの表示データであって、前記第１スレッドデータ生成手段により生成される表示データの出力画像よりも高画質の出力画像を表示させるための表示データを前記第２スレッドにおいて生成部に生成させ、
前記表示制御手段は、
前記第１スレッドデータ生成手段により前記画像データについての表示データが生成された場合に、その表示データを用いて出力画像を表示部に表示させ、その後、前記第２スレッドデータ生成手段により前記画像データについての表示データが生成された場合に、その表示データを用いて出力画像を表示部に表示させる、請求項１または２記載の情報処理プログラム。
【請求項８】
前記コンピュータを、
前記処理対象データに対応する複数の出力画像うち、何れかの出力画像を印刷させる印刷指示が入力された場合に、前記第２スレッド起動手段により起動された第２スレッドを終了部に終了させるスレッド終了手段と、して機能させることを特徴とする請求項１から７の何れかに記載の情報処理プログラム。
【請求項９】
一のアプリケーションにより実行される処理の実行単位であるスレッドであって、その一のアプリケーションの実行開始に応じてオペレーティングシステムにより起動され、且つ、入力部および表示部に関する制御が許可されている第１スレッドにおいて、複数の出力画像に対応するデータが含まれる処理対象データを受け付ける受付手段と、
その受付手段により処理対象データが受け付けられる場合に、前記第１スレッドから前記オペレーティングシステムに対して要求させ、その第１スレッドとは別に並行して処理が実行される前記スレッドであり、且つ、前記入力部および表示部に関する制御が制限されている第２スレッドを起動する第２スレッド起動実行手段と、
その第２スレッド起動実行手段により起動される第２スレッドにおいて、前記処理対象データのうち、２以上の出力画像に対応するデータについて、その出力画像を表示させるための表示データを生成する第２スレッドデータ生成実行手段と、
その第２スレッドデータ生成実行手段によって、所定数の出力画像を表示させるための表示データが生成された場合に、前記第２スレッドから前記第１スレッドに対して表示データの生成終了を通知する通知手段と、
その通知手段による通知が前記第１スレッドへ通知された場合に、その第１スレッドにおいて、前記第２スレッドデータ生成実行手段により生成された表示データを用いて出力画像を表示する表示手段とを備えていることを特徴とする情報処理装置。
【請求項１０】
情報処理装置において実行される情報処理方法であって、
一のアプリケーションにより実行される処理の実行単位であるスレッドであって、その一のアプリケーションの実行開始に応じてオペレーティングシステムにより起動され、且つ、入力部および表示部に関する制御が許可されている第１スレッドにおいて、複数の出力画像に対応するデータが含まれる処理対象データを受付部に受け付けさせる受付制御ステップと、
その受付制御ステップにより処理対象データが受け付けられる場合に、前記第１スレッドから前記オペレーティングシステムに対して要求させ、その第１スレッドとは別に並行して処理が実行される前記スレッドであり、且つ、前記入力部および表示部に関する制御が制限されている第２スレッドを起動部に起動させる第２スレッド起動ステップと、
その第２スレッド起動ステップにより起動される第２スレッドにおいて、前記処理対象データのうち、２以上の出力画像に対応するデータについて、その出力画像を表示させるための表示データを生成部に生成させる第２スレッドデータ生成ステップと、
その第２スレッドデータ生成ステップによって、所定数の出力画像を表示させるための表示データが生成された場合に、前記第２スレッドから前記第１スレッドに対して表示データの生成終了を通知部に通知させる通知制御ステップと、
その通知制御による通知が前記第１スレッドへ通知された場合に、その第１スレッドにおいて、前記第２スレッドデータ生成ステップにより生成された表示データを用いて出力画像を表示部に表示させる表示制御ステップとを含む情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理プログラム、情報処理装置および情報処理方法に関する。
【背景技術】
【０００２】
従来より、ユーザからの入力を受け付ける入力受付画面を表示装置に表示させ、その入力受付画面においてユーザによりデータファイルが指示された場合に、そのデータファイルのプレビュー画像を生成して表示装置に表示させるプログラムが知られている。プログラムの実行開始が、ユーザにより指示されると、そのプログラムがコンピュータ上で実行されるように、オペレーティングシステム（以下、「ＯＳ」と称す）において各種制御が行われる。例えば、ＯＳによって、プログラムに対応するスレッドが起動され、そのスレッドにおいてプログラムの処理が実行開始されるよう制御される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４２９８３６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のようなプレビュー画像を表示させるプログラムは、入力の検出処理や、プレビュー画像の生成処理や、プレビュー画像の表示処理など、複数の処理により構成されており、各処理は、ＯＳにより起動されたスレッドにおいて、一つずつ順番に実行されていく。そのため、ユーザにより指示されたデータファイルの数が多かったり、一ファイル辺りのサイズが大きいと、プレビュー画像の生成処理などのデータ処理に時間がかかり、その後に実行される予定の各処理の実行開始がそれぞれ遅延してしまう。仮に、入力の検出処理が遅延すると、ユーザが入力操作を行っても、その入力に対応する処理が実行されるまで暫く時間がかかるなど、ユーザから見て、入力操作が困難となる期間が長引くおそれがあった。また、データ処理に時間がかかると、プレビュー画像が表示されるまでに時間がかかるおそれがあった。
【０００５】
本発明は、上記の問題点を解決するためになされたものであり、入力操作が困難となる期間を抑制しつつ、プレビュー画像を早く表示させることができる情報処理プログラム、情報処理装置および情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
この目的を達成するために、本発明の情報処理プログラムは、情報処理装置が備えるコンピュータにおいて実行されるものであって、前記コンピュータを、一のアプリケーションにより実行される処理の実行単位であるスレッドであって、その一のアプリケーションの実行開始に応じてオペレーティングシステムにより起動され、且つ、入力部および表示部に関する制御が許可されている第１スレッドにおいて、複数の出力画像に対応するデータが含まれる処理対象データを受付部に受け付けさせる受付制御手段と、その受付制御手段により処理対象データが受け付けられる場合に、前記第１スレッドから前記オペレーティングシステムに対して要求させ、その第１スレッドとは別に並行して処理が実行される前記スレッドであり、且つ、前記入力部および表示部に関する制御が制限されている第２スレッドを起動部に起動させる第２スレッド起動手段と、その第２スレッド起動手段により起動される第２スレッドにおいて、前記処理対象データのうち、２以上の出力画像に対応するデータについて、その出力画像を表示させるための表示データを生成部に生成させる第２スレッドデータ生成手段と、その第２スレッドデータ生成手段によって、所定数の出力画像を表示させるための表示データが生成された場合に、前記第２スレッドから前記第１スレッドに対して表示データの生成終了を通知部に通知させる通知制御手段と、その通知制御手段による通知が前記第１スレッドへ通知された場合に、その第１スレッドにおいて、前記第２スレッドデータ生成手段により生成された表示データを用いて出力画像を表示部に表示させる表示制御手段と、して機能させる。
【０００７】
なお、本発明は、情報処理装置を制御する制御装置、情報処理システム、情報処理装置、情報処理方法、情報処理プログラムを記録する記録媒体等の種々の態様で実現可能である。
【発明の効果】
【０００８】
請求項１記載の情報処理プログラムによれば、第１スレッドとは別に並行して処理が実行される第２スレッドにおいて、処理対象データのうち、２以上の出力画像に対応するデータについて、その出力画像を表示させるための表示データを生成させることができる。よって、第１スレッドにおいて処理するデータ量を抑制できるので、第１スレッドにおいてデータ処理が長引き、入力に関する処理が遅延することを抑制できる。従って、ユーザから見て、入力操作が困難になる期間が長引くことを抑制できるという効果がある。また、所定数の出力画像を表示させるための表示データが第２スレッドにおいて生成された場合に、出力画像を表示部に表示させるので、出力画像を早く表示させることができるという効果がある。
【０００９】
請求項２記載の情報処理プログラムによれば、請求項１記載の情報処理プログラムの奏する効果に加え、処理対象データのうち、優先して処理すべきデータの表示データを、第２スレッドにおいて優先して生成させ、その表示データに対応する出力画像を早く表示部に表示させることができるという効果がある。
【００１０】
請求項３記載の情報処理プログラムによれば、請求項１または２記載の情報処理プログラムの奏する効果に加え、処理対象データのうち、総データ量が第１所定量以下である第１データについて、その出力画像を表示させるための表示データを、第１スレッドにおいて生成させることができる。よって、第１スレッドで処理するデータ量を、第１所定値以下に抑制できるので、第１スレッドにおいてデータ処理が長引き、入力に関する処理が遅延することを抑制できる。従って、ユーザから見て、入力操作が困難になる期間が長引くことを抑制しつつ、出力画像を表示部により早く表示させることができるという効果がある。また、第２スレッドにおいてデータ処理を行うためには、第１スレッドから第２スレッドを起動したり、処理すべきデータを指示するなどの時間が必要となる。そのため、第１スレッドから第２スレッドを起動させて、その第２スレッドで第１データに対応する表示データを生成させる場合と、第１スレッドでそのまま第１データに対応する表示データを生成させる場合とを比較すると、第１スレッドでそのままデータ処理を行った方が、第１データに対応する表示データを早く生成できる。従って、出力画像を表示部により早く表示させることができるという効果がある。
【００１１】
請求項４記載の情報処理プログラムによれば、請求項３記載の情報処理プログラムの奏する効果に加え、第１スレッドにおいて、第１データについての表示データの生成が完了した後に、第２スレッドを起動させることができる。第１スレッド、及び、第２スレッドがそれぞれ起動されている場合、第１スレッドと、第２スレッドとでそれぞれ並行して処理が実行されるため、第１スレッドに対して割り当てられる単位時間辺りの処理時間が短くなる。よって、第１スレッドでデータ処理を実行した後に、第２スレッドを起動することで、そのデータ処理が第１スレッドで行われる間に、第１スレッドに対して割り当てられる単位時間辺りの処理時間を増やせるので、第１スレッドにおいて、表示データをより早く生成させることができる。従って、出力画像を表示部により早く表示させることができるという効果がある。
【００１２】
請求項５記載の情報処理プログラムによれば、請求項３または４記載の情報処理プログラムの奏する効果に加え、処理対象データに対応する複数の出力画像のうち、その出力画像を表示させるための表示データが記憶部に記憶されてなく、且つ、その出力画像に対応するデータの累積量が第１所定量を超えない範囲内の出力画像が特定される。そして、処理対象データのうち、その特定された出力画像に対応するデータについて、第１スレッドで表示データが生成される。処理対象データのうち、既に表示データがあるデータについては、第１データに含まないので、その分、未生成の表示データを第１スレッドにおいて多く生成できるという効果がある。
【００１３】
請求項６記載の情報処理プログラムによれば、請求項３から５の何れかに記載の情報処理プログラムの奏する効果に加え、処理対象データから第１データを除いた残りのデータ量が第２所定量を超える場合に、第２スレッドでは、処理対象データから第１データを除いた残りのデータのうち、第２所定量以下までのデータである第２データについて、表示データの生成を開始させることができ、第３スレッドでは、処理対象データから第１データおよび第２データを除いた残りのデータについて、表示データの生成を開始させることができる。よって、多数の出力画像に対応するデータが処理対象データに含まれている場合などに、その多数の出力画像に対応する表示データを、各スレッドにおいて分散させ、且つ、並行して生成させることができる。従って、表示部に表示させる出力画像の変更がユーザなどにより指示された場合に、変更後の出力画像を素早く表示させることができる可能性を向上させられるという効果がある。
【００１４】
請求項７記載の情報処理プログラムによれば、請求項１または２記載の情報処理プログラムの奏する効果に加え、処理対象データのうち、データ形式がインターレース形式またはプログレッシブ形式の画像データについて、その表示データが第１スレッドにおいて生成された場合に、その表示データに対応する出力画像が表示部に表示される。その後、その出力画像よりも高画質の出力画像を表示させるための表示データが第２スレッドにおいて生成された場合に、その表示データに対応する出力画像が表示部に表示される。よって、まず先に、出力画像全体の概要を素早く表示部に表示させ、その後、高画質の出力画像全体を表示部に表示させることができるという効果がある。
【００１５】
請求項８記載の情報処理プログラムによれば、請求項１から７の何れかに記載の情報処理プログラムの奏する効果に加え、何れかの出力画像を印刷させる印刷指示が入力された場合に、第２スレッドが終了するので、コンピュータにかかる処理の負担を軽減できるという効果がある。
【００１６】
請求項９記載の情報処理装置によれば、請求項１記載の情報処理プログラムを実行する情報処理装置と同様の効果を奏する。
【００１７】
請求項１０記載の情報処理方法によれば、請求項１記載の情報処理プログラムを実行する情報処理装置と同様の効果を奏する。
【図面の簡単な説明】
【００１８】
【図１】本発明の情報処理プログラムの第１実施形態であるプレビュー表示アプリケーションを搭載した携帯端末の電気的構成を示すブロック図である。
【図２】携帯端末において実行されるプレビュー表示処理を示すフローチャートである。
【図３】携帯端末において実行されるプレビューファイル生成処理を示すフローチャートである。
【図４】携帯端末において実行される表示切替処理を示すフローチャートである。
【図５】ＯＳが本アプリに対して割り当てるメインスレッドと、サブスレッドとにおいて実行される処理の概略を示す模式図である。
【図６】ＯＳが本アプリに対して割り当てるメインスレッドと、サブスレッドとにおいて実行される処理の概略を示す模式図である。
【図７】第２実施形態の携帯端末において実行されるプレビュー表示処理を示すフローチャートである。
【図８】第３実施形態の携帯端末において実行されるプレビュー表示処理を示すフローチャートである。
【発明を実施するための形態】
【００１９】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図１は、本発明の情報処理プログラムの第１実施形態であるプレビュー表示アプリケーション（以下、「本アプリ」と称す）１４ｂが搭載された携帯端末１０の電気的構成を示すブロック図である。
【００２０】
携帯端末１０は、図示しない無線基地局を介して、他の通話装置との間で音声通話を行う携帯電話機である。携帯端末１０には、ＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、フラッシュメモリ１４、無線ＬＡＮ送受信部１５、操作キー１６、タッチパネル１７、液晶表示装置（以下、「ＬＣＤ」と称す）１８、メモリカードインターフェイス（以下、「メモリカードＩ／Ｆ」と称す）１９、音声入出力部２１、電話網通信部２２が設けられる。これらは、バスライン２３を介して互いに通信可能に接続されている。
【００２１】
ＣＰＵ１１は、ＲＯＭ１２等に記憶される固定値やプログラムに従って、バスライン２３と接続された各部を制御する。ＲＯＭ１２は、書換不能なメモリであって、各種の固定値を記憶する。ＲＡＭ１３は、書換可能な揮発性のメモリであり、処理対象リスト１３ａと、優先処理ページ設定メモリ１３ｂとが設けられる。
【００２２】
処理対象リスト１３ａは、プレビューファイルの生成対象となるファイルを示すリストであり、ユーザにより指定されたファイルのファイル名により構成される。ユーザにより複数のファイルが指定された場合には、例えば、指定された順や、ファイル名順に、ファイル名が並べられて記憶される。尚、ファイルとしては、１以上のページを含む文書ファイルや、一の画像または複数の画像を含む画像ファイルが指定されるものとする。また、説明の便宜上、画像ファイルに含まれる各画像は、文書ファイルのように、それぞれ１ページとして扱う。
【００２３】
優先処理ページ設定メモリ１３ｂは、優先してプレビューファイルを生成させたいファイル、及び、ページを指定するためのメモリである。優先処理ページ設定メモリ１３ｂには、例えば、優先してプレビューファイルを生成させたいファイルのファイル名と、そのページ番号とが記憶される。
【００２４】
フラッシュメモリ１４は、書換可能な不揮発性のメモリであり、オペレーティングシステム（以下、「ＯＳ」と称す）１４ａや、本アプリ１４ｂが格納される。ＯＳ１４ａは、携帯端末１０に搭載された基本ソフトウェアであって、本実施形態の場合、アンドロイド（登録商標）ＯＳであるものとする。以降、アプリケーション（本アプリ１４ｂを含む）やＯＳ１４ａなどのプログラムを実行するＣＰＵ１１のことを、単に、プログラム名で記載する場合もある。例えば、「アプリケーション」という記載が、「アプリケーションを実行するＣＰＵ１１」を意味する場合もある。
【００２５】
携帯端末１０に搭載された本アプリ１４ｂは、ユーザによりファイルが指定された場合に、そのファイルのプレビュー画像を、１ページ分ずつ、又は、１画像分ずつ、ＬＣＤ１８に表示させるためのアプリケーションである。本アプリ１４ｂは、多数のファイルや、サイズの大きいファイルがユーザにより指定された場合でも、ユーザから見て入力操作が困難となる期間が抑制されるように、且つ、プレビュー画像をＬＣＤ１８に早く表示させることができるように構成されている。
【００２６】
尚、携帯端末１０にインストールされた各アプリケーション（本アプリ１４ｂを含む）は、ＯＳ１４ａのApplication  Program  Interface（以下、「ＡＰＩ」と称す）を呼び出して、無線ＬＡＮ送受信部１５、操作キー１６、タッチパネル１７、ＬＣＤ１８、メモリカードＩ／Ｆ１９、音声入出力部２１、電話網通信部２２など、携帯端末１０の各構成に受け渡したいデータをＯＳ１４ａに出力する。即ち、各アプリケーションは、ＯＳ１４ａのＡＰＩを呼び出すことによって、携帯端末１０の各構成を制御する。また、各アプリケーションは、ＯＳ１４ａのＡＰＩを呼び出して、携帯端末１０の各構成が出力するデータや各構成の状態を示すデータをＯＳ１４ａから取得する。即ち、ＯＳ１４ａのＡＰＩを呼び出すことによって、携帯端末１０の各構成の状態（携帯端末１０への操作入力の状態も含む）を示すデータをＯＳ１４ａから取得する。また、ＯＳ１４ａは、携帯端末１０の各構成が出力するデータや各構成の状態を示すデータを、定期的に、あるいは各構成の状態変化の都度、各アプリケーションに通知することもある。即ち、各アプリケーションは、ＯＳ１４ａからの通知を受けることによって、携帯端末１０の各構成の状態（携帯端末１０への操作入力の状態も含む）を示すデータをＯＳ１４ａから取得する。
【００２７】
ＯＳ１４ａは、一のアプリケーションにおける処理の実行単位であるスレッドを、一のアプリケーションに対して複数割り当てることが可能に構成されている。携帯端末１０において、アプリケーション（本アプリ１４ｂを含む）の実行がユーザ等により指定されると、ＯＳ１４ａは、そのアプリケーションに対応するメインスレッドを起動して、そのアプリケーションに割り当て、更に、そのアプリケーションの処理がメインスレッドにおいて実行されるように制御する。
【００２８】
その後、メインスレッドにおいてアプリケーションの処理が実行されている場合に、そのアプリケーションからＯＳ１４ａに対して、サブスレッドの起動が要求されると、ＯＳ１４ａは、その要求したアプリケーションに対応するサブスレッドを起動して、そのアプリケーションに割り当て、更に、そのアプリケーションの処理がサブスレッドにおいて実行されるように制御する。尚、メインスレッドは、一のプリケーションに対して一つしか起動されないが、サブスレッドは、一のアプリケーションからの要求に応じて複数起動される。また、メインスレッドでは、入出力および表示に関する処理を含む任意の処理を実行させることができるが、サブスレッドでは、入出力および表示に関する処理を含まない任意の処理しか実行させることができない。一のアプリケーションに対して、メインスレッドおよびサブスレッドが割り当てられた場合、その一のアプリケーションでは、各スレッドにおいて、それぞれ任意の処理を実行させて、各処理を並行して実行させることができる。
【００２９】
本アプリ１４ｂには、処理データ上限値１４ｂ１が設けられる。本実施形態では、サブスレッドにおいて、主に、プレビューファイルが生成されるが、メインスレッドにおいても、プレビューファイルが生成される場合がある。処理データ上限値１４ｂ１は、メインスレッドにおいてプレビューファイルを生成させる場合に、そのメインスレッドでの生成対象となるデータの上限値を示す。
【００３０】
無線ＬＡＮ送受信部１５は、ＩＥＥＥ８０２．１１ｂ/ｇの規格に準拠した無線ＬＡＮにより、図示しないアクセスポイントを介して、携帯端末１０と他の機器とをＷｉ−Ｆｉ（登録商標）接続する回路である。操作キー１６は、携帯端末１０の筺体に設けられたハードキーであり、携帯端末１０に設定情報や指示を入力する。タッチパネル１７は、ＬＣＤ１８に重ねて設けられ、携帯端末１０に設定情報や指示を入力する。ＬＣＤ１８は、携帯端末１０にインストールされたアプリケーションを示すアイコンの一覧や、起動したアプリケーションの画面を表示する。
【００３１】
メモリカードＩ／Ｆ１９は、不揮発性のメモリカード２０が装着されるインターフェイスであって、メモリカード２０に対するデータの書き込み又は読み出しを制御する。メモリカード２０は、一例として、ＳＤカード（登録商標）である。メモリカード２０には、処理対象ファイル格納エリア２０ａと、プレビューファイル格納エリア２０ｂとが設けられる。処理対象ファイル格納エリア２０ａは、プレビューファイルの生成対象となる文書ファイルや、画像ファイルが格納されるエリアである。例えば、ユーザにより入力操作が行われると、その入力操作に応じたファイルが、ＯＳ１４ａにより格納される。プレビューファイル格納エリア２０ｂは、本アプリ１４ｂにより生成されたプレビューファイルが格納されるエリアである。音声入出力部２１は、マイクやスピーカなどで構成された音声入出力用デバイスであり、電話網通信部２２は、他の電話装置との間で電話通信を行うための回路である。
【００３２】
図２は、携帯端末１０において実行されるプレビュー表示処理を示すフローチャートである。この処理は、携帯端末１０において、ユーザが本アプリ１４ｂの実行開始を指示した場合に実行される処理であり、ＯＳ１４ａが本アプリ１４ｂに対して割り当てたメインスレッドにおいて実行される処理である。
【００３３】
尚、以下に説明する図２から図４、図７、及び、図８のフローチャートに示す各ステップは、本アプリ１４ｂがＣＰＵ１１に実行させ、または、本アプリ１４ｂがＯＳ１４ａなどの機能を利用してＣＰＵ１１に実行させるものとして説明する。ただし、各フローチャートが含むステップは、ＯＳ１４ａやその他アプリケーションがＣＰＵ１１に実行させるステップに一部置き換えられても良い。また、ＣＰＵ１１の関与によらず、携帯端末１０に設けられたハードウェアそのものが作動することによって実現されるステップに、一部置き換えられても良い。
【００３４】
ＣＰＵ１１は、まず、データ選択画面をＬＣＤ１８に表示させる（Ｓ１）。例えば、データ選択画面では、処理対象ファイル格納エリア２０ａに格納されているファイルの一覧が表示される。そして、その表示されたファイルの一覧の中から、１以上のファイルが処理対象ファイルとしてユーザにより指定される。次に、ＣＰＵ１１は、処理対象ファイルとしてユーザにより指定された全ファイルのファイル名を、指定された順、又は、ファイル名の順に並べて、処理対象リスト１３ａとして記憶させる（Ｓ２）。以下、処理対象リスト１３ａに記憶されているファイル名に対応する各ファイルのことを、単に、処理対象リスト１３ａにより示される各処理対象ファイルと記載する。
【００３５】
次に、ＣＰＵ１１は、処理対象リスト１３ａにより示される各処理対象ファイルについて、ページ単位で、そのページに対応するプレビューファイルの有無を確認する（Ｓ３）。確認の結果、各処理対象ファイルについてのプレビューファイルが全て揃っておらず、プレビューファイルの生成が必要な場合（Ｓ４：Ｙｅｓ）、ＣＰＵ１１は、処理対象リスト１３ａを参照し、１番目の処理対象ファイルを特定する（Ｓ６）。具体的には、処理対象リスト１３ａに記憶されている１番目のファイル名に対応するファイルを、１番目の処理対象ファイルと特定する。
【００３６】
そして、ＣＰＵ１１は、１番目の処理対象ファイルの先頭ページに対応するプレビューファイルが有る場合（Ｓ７：Ｙｅｓ）、Ｓ１２の処理へ移行する。一方、１番目の処理対象ファイルの先頭ページに対応するプレビューファイルが無い場合（Ｓ７：Ｎｏ）、その先頭ページのデータ量を算出する（Ｓ８）。そして、その算出されたデータ量が、処理データ上限値１４ｂ１を超えている場合（Ｓ９：Ｙｅｓ）、ＣＰＵ１１は、１番目の処理対象ファイルの先頭ページを、優先処理ページとして設定し（Ｓ１３）、Ｓ１４の処理へ移行する。Ｓ１３の処理では、１番目の処理対象ファイルのファイル名と、先頭ページのページ番号（即ち、１）とを、優先処理ページ設定メモリ１３ｂに記憶させる。
【００３７】
一方、Ｓ８の処理で算出されたデータ量が、処理データ上限値１４ｂ１以下である場合（Ｓ９：Ｎｏ）、１番目の処理対象ファイルの先頭ページに対応するプレビューファイルを、このメインスレッドにおいて生成し（Ｓ１０）、その生成されたファイルをプレビューファイル格納エリア２０ｂに保存（記憶）させる（Ｓ１１）。尚、Ｓ１１の場合に限らず、生成されたプレビューファイルを保存させる場合には、例えば、処理対象ファイルのファイル名と、生成対象となったページのページ番号とを組み合わせたものを、プレビューファイルのファイル名として、ファイル名が他のプレビューファイルと重複しないようにする。
【００３８】
次に、ＣＰＵ１１は、Ｓ１１の処理で生成されたプレビューファイルを用いて、１番目の処理対象ファイルのプレビュー画像を、ＬＣＤ１８に表示させ（Ｓ１２）、これから起動するサブスレッドにおいて、プレビューファイル生成処理が実行開始されるように設定を行う（Ｓ１４）。そして、このメインスレッドからＯＳ１４ａに対して、サブスレッドの起動を要求する（Ｓ１５）。
【００３９】
Ｓ４において、処理対象リスト１３ａにより示される各処理対象ファイルについてのプレビューファイルが全て揃っており、プレビューファイルの生成が不要な場合（Ｓ４：Ｎｏ）、ＣＰＵ１１は、１番目の処理対象ファイルの先頭ページについて、そのプレビュー画像をＬＣＤ１８に表示させる（Ｓ５）。この場合、１番目の処理対象ファイルに対応するプレビューファイルは、既に、プレビューファイル格納エリア２０ｂに記憶されているので、そこから該当するファイルを取得して、そのプレビュー画像をＬＣＤ１８に表示させる。次に、このメインスレッドにおいて、表示切替処理を実行させ（Ｓ１６）、本処理を終了させる。
【００４０】
図３は、携帯端末１０において実行されるプレビューファイル生成処理を示すフローチャートである。この処理は、上述したＳ１５の処理により起動されるサブスレッドにおいて実行される処理である。この処理は、処理対象リスト１３ａにより示される各処理対象ファイルについて、ページ単位で、そのページに対応するプレビューファイルを生成するための処理である。
【００４１】
ＣＰＵ１１は、まず、優先処理ページが設定されていない場合（Ｓ２１：Ｎｏ）、Ｓ２８の処理へ移行する。一方、優先処理ページが設定されている場合（Ｓ２１：Ｙｅｓ）、その処理優先ページについて、プレビューファイルを生成する（Ｓ２２）。具体的には、優先処理ページ設定メモリ１３ｂに記憶されているファイル名と、ページ番号とを取得する。そして、取得したファイル名に対応するファイルであり、そのファイル中の取得したページ番号のページについて、プレビューファイルを生成する。そして、ＣＰＵ１１は、生成されたプレビューファイルを、プレビューファイル格納エリア２０ｂに保存させ（Ｓ２３）、優先処理ページに対応するプレビューファイルの準備完了を、このサブスレッドからメインスレッドに対して、スレッド間通信により通知させる（Ｓ２４）。
【００４２】
次に、ＣＰＵ１１は、優先処理ページの設定の対象となった処理対象ファイルのうち、優先処理ページとして設定されたページを除く、残りの全ページについて、プレビューファイルが揃っていない場合（Ｓ２５：Ｎｏ）、その残りの全ページのうち、プレビューファイルが無いページについて、ページ単位で、プレビューファイルを生成する（Ｓ２６）。そして、ＣＰＵ１１は、生成された各プレビューファイルを、プレビューファイル格納エリア２０ｂに保存させる（Ｓ２７）。
【００４３】
また、処理対象ファイルのうち、優先処理ページとして設定されたページを除く、残りの全ページについて、プレビューファイルが揃っている場合（Ｓ２５：Ｙｅｓ）、ＣＰＵ１１は、Ｓ２８の処理へ移行する。そして、ＣＰＵ１１は、処理対象リスト１３ａにより示される各処理対象ファイルについてのプレビューファイルが全て有る場合（Ｓ２８：Ｎｏ）、このサブスレッドからＯＳ１４ａに対して、このサブスレッドの終了を要求し（Ｓ３２）、本処理を終了する。
【００４４】
一方、各処理対象ファイルについてのプレビューファイルが全て揃っていない場合（Ｓ２８：Ｙｅｓ）、処理対象リスト１３ａにより示される各処理対象ファイルの中から、プレビューファイルの準備が未完了のものを一つ特定し（Ｓ２９）、その特定された一の処理対象ファイルに含まれるページのうち、プレビューファイルが無い全ページについて、ページ単位で、そのプレビューファイルを生成する（Ｓ３０）。そして、ＣＰＵ１１は、生成された各プレビューファイルを、プレビューファイル格納エリア２０ｂに保存させ（Ｓ３１）、Ｓ２１の処理に戻る。
【００４５】
図４は、携帯端末１０において実行される表示切替処理を示すフローチャートである。この処理は、メインスレッドにおいて実行される処理である。この処理は、ＬＣＤ１８に表示させるプレビュー画像を、ユーザの指示に応じて切り替えるための処理である。
【００４６】
ＣＰＵ１１は、サブスレッドからメインスレッド対して、スレッド間通信により、優先処理ページに対応するプレビューファイルの準備完了が通知された場合（Ｓ４１：Ｙｅｓ）、その優先処理ページについて、そのプレビュー画像をＬＣＤ１８に表示させる（Ｓ４２）。具体的には、優先処理ページ設定メモリ１３ｂに記憶されているファイル名と、ページ番号とに対応するプレビューファイルを、プレビューファイル格納エリア２０ｂから取得し、そのプレビュー画像をＬＣＤ１８に表示させる。次に、ＣＰＵ１１は、優先処理ページ設定メモリ１３ｂをクリアして、優先処理ページの設定を解除する（Ｓ４３）。また、Ｓ４１において、優先処理ページに対応するプレビューファイルの準備完了が通知されていない場合（Ｓ４１：Ｎｏ）、ＣＰＵ１１は、Ｓ４４の処理へ移行する。
【００４７】
次に、ＣＰＵ１１は、ＬＣＤ１８にプレビュー画像を表示させるファイル及びページがユーザにより指示され（Ｓ４４：Ｙｅｓ）、且つ、その指示されたファイル及びページに対応するプレビューファイルがプレビューファイル格納エリア２０ｂにある場合（Ｓ４５：Ｙｅｓ）、Ｓ４８の処理へ移行する。尚、ユーザがページを指示せず、ファイルのみ指示した場合には、ユーザにより、指示したファイルの先頭ページが指示されたものとみなす。
【００４８】
一方、ＬＣＤ１８にプレビュー画像を表示させるファイル及びページがユーザにより指示されていない場合（Ｓ４４：Ｎｏ）、Ｓ５０の処理へ移行する。そして、ＣＰＵ１１は、ＬＣＤ１８にプレビュー画像を表示させるファイル及びページがユーザにより指示され（Ｓ４４：Ｙｅｓ）、且つ、その指示されたファイル及びページに対応するプレビューファイルが無く（Ｓ４５：Ｎｏ）、更に、その指示されたファイル及びページに対応するプレビューファイルが、今現在、このサブスレッドにおいて生成中である場合（Ｓ４６：Ｙｅｓ）、Ｓ４７の処理へ移行する。
【００４９】
そして、Ｓ４７の処理では、ＣＰＵ１１は、サブスレッドにおいて、今現在、生成中であるプレビューファイルが生成されるまで（Ｓ４７：Ｎｏ）待機し、その生成中であったプレビューファイルの生成が完了した場合に（Ｓ４７：Ｙｅｓ）、その生成が完了したプレビューファイルを用いて、ユーザにより指示されたファイル及びページに対応するプレビュー画像を、ＬＣＤ１８に表示させ（Ｓ４８）、Ｓ５０の処理へ移行する。
【００５０】
また、ＣＰＵ１１は、ＬＣＤ１８にプレビュー画像を表示させるファイル及びページがユーザにより指示され（Ｓ４４：Ｙｅｓ）、且つ、その指示されたファイル及びページに対応するプレビューファイルが無く（Ｓ４５：Ｎｏ）、更に、その指示されたファイル及びページに対応するプレビューファイルが、今現在、このサブスレッドにおいて生成中でない場合（Ｓ４６：Ｎｏ）、ユーザにより指示されたファイルの中の指示されたページを、優先処理ページとして設定する（Ｓ４９）。
【００５１】
次に、ＣＰＵ１１は、ＬＣＤ１８に表示させているプレビュー画像の印刷がユーザにより指示された場合に（Ｓ５０：Ｙｅｓ）、このメインスレッドからＯＳ１４ａに対して、サブスレッドの終了を要求し（Ｓ５１）、Ｓ５２の処理へ移行する。プレビュー画像の印刷がユーザにより指示される場合とは、所望するプレビュー画像をユーザが見つけた場合なので、これ以降、プレビュー表示が継続される可能性は低くなる。仮に、プレビュー表示が継続されない場合にも関わらず、サブスレッドにおいて、プレビューファイルの生成を継続させると、必要性の低い処理を実行させることになる。また、ＯＳ１４ａによるサブスレッドの管理や制御などの処理も無駄になってしまう。つまり、携帯端末１０におけるＣＰＵ１１やＲＡＭ１３などのリソースを無駄に占有してしまう。そこで、本実施形態では、Ｓ１５の処理により起動させたサブスレッドを終了させている。これにより、携帯端末１０におけるＣＰＵ１１やＲＡＭ１３などのリソースが、無駄に占有されることを抑制できるので、携帯端末１０にかかる処理の負担を軽減できる。また、入力に関する処理が遅延することを抑制でき、ユーザから見て、入力操作が困難となる期間を抑制できる。
【００５２】
一方、ＬＣＤ１８に表示させているプレビュー画像の印刷がユーザにより指示されていない場合（Ｓ５０：Ｎｏ）、ＣＰＵ１１は、Ｓ５２の処理へ移行する。次に、ＣＰＵ１１は、プレビュー画像の表示の終了が、ユーザにより指示された場合（Ｓ５２：Ｙｅｓ）、本処理を終了し、プレビュー表示処理に戻る。一方、プレビュー画像の表示の終了が、ユーザにより指示されていない場合（Ｓ５２：Ｎｏ）、Ｓ４１の処理に戻る。
【００５３】
図５および図６は、ＯＳ１４ａが本アプリ１４ｂに対して割り当てるメインスレッドと、サブスレッドとにおいて実行される処理の概略を示す模式図である。まず、図５（ａ）を参照して、処理対象リスト１３ａにより示される各処理対象ファイルのうち、１番目の処理対象ファイルの先頭ページについてプレビューファイルが無く、且つ、その先頭ページを構成するデータ量が、処理データ上限値１４ｂ１以下である場合の概略について説明する。
【００５４】
図５（ａ）に示すように、携帯端末１０において、本アプリ１４ｂの実行開始がユーザにより指示されると、ＯＳ１４ａによって、本アプリ１４ｂに対してメインスレッドが割り当てられ、そのメインスレッドにおいて、プレビュー表示処理の各ステップに対応する処理が順番に実行されていく。具体的には、まず、メインスレッドでは、処理対象ファイルが特定され、その処理対象ファイルのうち、１番目の処理対象ファイルの先頭ページについて、プレビューファイルの有無が確認される。
【００５５】
ここで、プレビューファイルが無く、且つ、その先頭ページを構成するデータ量が、処理データ上限値１４ｂ１以下の場合、メインスレッドでは、１番目の処理対象ファイルの先頭ページについて、プレビューファイルが生成され、そのプレビューファイルが用いられて、その先頭ページのプレビュー画像がＬＣＤ１８に表示される。その後、メインスレッドでは、サブスレッドの起動がＯＳ１４ａに対して要求され、更に、表示切替処理が実行される。
【００５６】
このように、本実施形態では、１番目の処理対象ファイルの先頭ページについて、そのプレビューファイルをメインスレッドで生成させている。仮に、１番目の処理対象ファイルの先頭ページに対応するプレビューファイルを、サブスレッドにおいて生成させる場合には、サブスレッドを起動させる時間や、そのサブスレッドにおいて、１番目の処理対象ファイルの先頭ページが生成されるように制御するなどの時間が必要となる。そのため、メインスレッドからサブスレッドを起動させ、そのサブスレッドにおいて１番目の処理対象ファイルの先頭ページに対応するプレビューファイルを生成させるよりも、メインスレッドにおいてそのまま１番目の処理対象ファイルの先頭ページに対応するプレビューファイルを生成させる方が、そのプレビューファイルをより早く生成できる。よって、プレビュー画像をＬＣＤ１８により早く表示させることができる。
【００５７】
また、本実施形態では、メインスレッドにおいてプレビューファイルが生成された後に、サブスレッドを起動させている。仮に、メインスレッド、及び、サブスレッドがそれぞれ起動されている場合、メインスレッド、及び、サブスレッドでそれぞれ並行して処理が実行されるため、メインスレッドに対して割り当てられる単位時間辺りの処理時間が短くなる。よって、メインスレッドおよびサブレッドを並行して起動させずに、メインスレッドにおけるデータ処理が終了してから、サブスレッドを起動させることで、メインスレッドにおいてデータ処理を行っている間に、メインスレッドに割り当てられる単位時間辺りの処理時間を増やせる。従って、メインスレッドにおいて、プレビューファイルの生成を早く完了させることができるので、プレビュー画像をＬＣＤ１８により早く表示させることができる。
【００５８】
そして、ＯＳ１４ａによって、本アプリ１４ｂに対してサブスレッドが割り当てられると、サブスレッドでは、処理対象ファイルのうち、１番目の処理対象ファイルから順番に、残りのファイルについて、プレビューファイルの生成が行われる。そして、処理対象ファイルの全てについて、プレビューファイルの生成が終了すると、サブスレッドからＯＳ１４ａに対して、サブレッドの終了が要求され、サブスレッドが終了させられる。尚、サブスレッドを終了させる場合に、サブスレッドからＯＳ１４ａに対して、サブスレッド自ら終了することを通知し、サブスレッドからＯＳ１４ａに対して終了を要求せずに、サブスレッドが自らサブスレッドを終了させても良い。
【００５９】
次に、図５（ｂ）を参照して、処理対象リスト１３ａにより示される各処理対象ファイルのうち、１番目の処理対象ファイルの先頭ページについてプレビューファイルが無く、且つ、その先頭ページを構成するデータ量が、処理データ上限値１４ｂ１を超えている場合の概略について説明する。
【００６０】
この場合、図５（ｂ）に示すように、メインスレッドでは、プレビューファイルは生成されず、１番目の処理対象ファイルの先頭ページが、優先処理ページとして設定される。そして、メインスレッドでは、サブスレッドの起動がＯＳ１４ａに対して要求され、更に、表示切替処理が実行される。
【００６１】
本アプリ１４ｂに対してサブスレッドが割り当てられると、サブスレッドでは、まず、処理対象ファイルのうち、優先処理ページに対応するプレビューファイルの生成が行われる。即ち、１番目の処理対象ファイルの先頭ページについて、プレビューファイルの生成が行われる。
【００６２】
このように、本実施形態では、１番目の処理対象ファイルの先頭ページに対応するデータ量が、処理データ上限値１４ｂ１を超えている場合には、サブスレッドにおいて、そのプレビューファイルを生成させる。よって、メインスレッドにおいて処理されるデータ量が多くなり、その結果、データ処理が長引くことを抑制できる。従って、入力に関する処理が遅延することを抑制でき、ユーザから見て、入力操作が困難となる期間を抑制できる。具体的には、ユーザがプレビュー表示を取りやめたい場合に、プレビュー表示のキャンセル入力を素早く受け付けることができる。
【００６３】
そして、サブスレッドにおいて、優先処理ページに対応するプレビューファイルの生成が終了すると、サブスレッドからメインスレッドに対して、スレッド間通信により、優先処理ページに対応するプレビューファイルの準備完了が通知される。メインスレッドでは、このプレビューファイルの準備完了通知が受信されると、優先処理ページに対応するプレビューファイルが用いられて、そのプレビュー画像がＬＣＤ１８に表示される。即ち、１番目の処理対象ファイルの先頭ページについて、そのプレビュー画像が表示される。
【００６４】
このように、本実施形態では、サブスレッドにおいて、１番目の処理対象ファイルの先頭ページに対応するプレビューファイルが準備できたら、他のページや、他の処理対象ファイルに対応するプレビューファイルの生成完了を待たずに、１番目の処理対象ファイルの先頭ページに対応するプレビュー画像を、ＬＣＤ１８に表示させる。よって、プレビュー画像をＬＣＤ１８により早く表示させることができる。
【００６５】
そして、サブスレッドでは、メインスレッドへの通知が終了すると、その後、処理対象ファイルのうち、１番目の処理対象ファイルから順番に、残りのファイルについて、プレビューファイルの生成が行われる。そして、処理対象ファイルの全てについて、プレビューファイルの生成が終了すると、サブスレッドからＯＳ１４ａに対して、サブレッドの終了が要求され、サブスレッドが終了させられる。尚、サブスレッドを終了させる場合に、サブスレッドからＯＳ１４ａに対して、サブスレッド自ら終了することを通知し、サブスレッドからＯＳ１４ａに対して終了を要求せずに、サブスレッドが自らサブスレッドを終了させても良い。
【００６６】
上述したように、本実施形態では、各処理対象ファイルに対応するプレビューファイルを、主に、サブスレッドにおいて生成させている。よって、メインスレッドで生成させるプレビューファイルの数を抑制できる。従って、メインスレッドにおいて処理されるデータ量を抑制できるので、データ処理が長引き、入力に関する処理が遅延することを抑制できる。故に、ユーザから見て、入力操作が困難となる期間を抑制できる。
【００６７】
次に、図６を参照して、サブスレッドにおいて、処理対象ファイルのうち、プレビューファイルの準備が未完了の各ファイルについて順番に、プレビューファイルの生成が行われている状態で、メインスレッドにおいて、ＬＣＤ１８にプレビュー画像を表示させるファイル及びページが、ユーザにより指示された場合の概略について説明する。
【００６８】
この場合、図６に示すように、メインスレッドにおいて、ＬＣＤ１８にプレビュー画像を表示させるファイル及びページが、ユーザにより指示されると、その指示されたファイル及びページ対応するプレビューファイルの有無が確認される。確認の結果、ユーザにより指示されたファイル及びページに対応するプレビューファイルが無い場合、メインスレッドでは、ユーザにより指示されたファイル及びページが、優先処理ページとして設定される。
【００６９】
一方、サブスレッドでは、今現在、プレビューファイルの生成対象となっているファイルについて、その生成が終了した場合に、優先処理ページが設定されているか否かが確認される。ここで、優先処理ページが設定されている場合、処理対象ファイルのうち、まず先に、優先処理ページに対応するプレビューファイルの生成が行われる。即ち、ユーザにより指示されたファイル及びページに対応するプレビューファイルの生成が行われる。そして、このプレビューファイルの生成が終了すると、サブスレッドからメインスレッドに対して、スレッド間通信により、優先処理ページに対応するプレビューファイルの準備完了が通知される。
【００７０】
メインスレッドでは、このプレビューファイルの準備完了通知が受信されると、優先処理ページに対応するプレビューファイルが用いられて、そのプレビュー画像がＬＣＤ１８に表示される。即ち、ユーザにより指示されたファイル及びページについて、そのプレビュー画像が表示される。このように、本実施形態では、ユーザにより指示されたファイル及びページに対応するプレビューファイルを、サブスレッドで優先させて生成させることができる。よって、ユーザが所望するファイル及びページのプレビュー画像を早くＬＣＤ１８に表示させることができる。
【００７１】
次に、本発明の第２実施形態を説明する。第２実施形態において、携帯端末１０の電気的構成は、第１実施形態で説明した構成と同一であるため、第１実施形態と同一の符号を付して説明を省略する。上述した第１実施形態では、処理対象リスト１３ａにより示される各処理対象ファイルのうち、１番目の処理対象ファイルの先頭ページを、メインスレッドでのプレビューファイルの生成対象としたが、第２実施形態では、先頭ページに限らず、１番目の処理対象ファイルの他のページについても、プレビューファイルの生成対象とする。
【００７２】
図７は、第２実施形態の本アプリ１４ｂに従って、携帯端末１０において実行されるプレビュー表示処理を示すフローチャートである。尚、第２実施形態において、第１実施形態で説明した処理と同一の処理には同一の符号を付し、その説明を省略する。この処理は、第１実施形態の場合と同様に、携帯端末１０において、ユーザが本アプリ１４ｂの実行開始を指示した場合に実行される処理であり、ＯＳ１４ａが本アプリ１４ｂに対して割り当てたメインスレッドにおいて実行される処理である。
【００７３】
ＣＰＵ１１は、Ｓ１〜Ｓ６の処理を実行する。Ｓ６の処理が終了したら、ＣＰＵ１１は、処理対象リスト１３ａにより示される各処理対象ファイルのうち、１番目の処理対象ファイルの各ページについて、そのデータ量を算出する（Ｓ６１）。尚、１番目の処理対象ファイルの各ページのうち、既にプレビューファイルが有るページについては、データ量を０と算出させる。
【００７４】
次に、ＣＰＵ１１は、１番目の処理対象ファイルの先頭ページから順番に、１ページずつ、各ページに対応するデータの累積量を計数してゆき、そのデータの累積量が、処理データ上限値１４ｂ１を超えない範囲の各ページを特定する（Ｓ６２）。そして、Ｓ６２において、１番目の処理対象ファイルの各ページのうち、先頭ページが特定されなかった場合（Ｓ６３：Ｎｏ）、ＣＰＵ１１は、１番目の処理対象ファイルの先頭ページを、優先処理ページとして設定し（Ｓ６４）、Ｓ１４の処理へ移行する。例えば、先頭ページに対応するプレビューファイルが無く、且つ、先頭ページのデータ量が大きくて、処理データ上限値１４ｂ１を超える場合には、Ｓ６３：Ｎｏへ分岐する。
【００７５】
一方、Ｓ６２において、先頭ページが特定された場合（Ｓ６３：Ｙｅｓ）、ＣＰＵ１１は、Ｓ６２の処理で特定された各ページのうち、プレビューファイルが無い全ページについて、ページ単位で、そのプレビューファイルを生成し（Ｓ６５）、その生成された各ファイルをプレビューファイル格納エリア２０ｂに保存させる（Ｓ６６）。
【００７６】
次に、ＣＰＵ１１は、プレビューファイル格納エリア２０ｂに記憶されているプレビューファイルのうち、１番目の処理対象ファイルの先頭ページに対応するファイルを取得して、そのプレビュー画像をＬＣＤ１８に表示させる（Ｓ６７）。そして、ＣＰＵ１１は、Ｓ１４〜Ｓ１６の処理を実行し、本処理を終了させる。
【００７７】
図７に示すプレビュー表示処理によれば、１番目の処理対象ファイルの各ページのうち、既にプレビューファイルが有るページについては、データ量を０とみなし、その上で、処理データ上限値１４ｂ１を超えない範囲のデータに対応する各ページを特定させることができる。これにより、プレビューファイルが無いページをより多く特定させることができるので、メインスレッドにおいて、プレビューファイルが無いページに対応するプレビューファイルをより多く生成できる。
【００７８】
次に、本発明の第３実施形態を説明する。第３実施形態において、携帯端末１０の電気的構成は、第１実施形態および第２実施形態で説明した構成と同一であるため、第１実施形態および第２実施形態と同一の符号を付して説明を省略する。
【００７９】
第３実施形態では、サブスレッドにおいて処理させるデータ量が、第２上限値を超える場合には、サブスレッドを２つ起動させて、１つ目のサブスレッド（以後、「第１サブスレッド」と称す）において、第２上限値までのデータを処理させ、２つ目のサブスレッド（以下、「第２サブスレッド」と称す）において、残りのデータを処理させる。
【００８０】
本アプリ１４ｂには、第１上限値と、第２上限値とが設けられる。第１上限値は、メインスレッドにおいてプレビューファイルを生成させる場合に、そのメインスレッドでの生成対象となるデータの上限値を示す。即ち、第１，第２実施形態の処理データ上限値１４ｂ１に相当する。第２上限値は、第１サブスレッドにおいてプレビューファイルを生成させる場合に、その第１サブスレッドでの生成対象となるデータの上限値を示す。
【００８１】
図８は、第３実施形態の本アプリ１４ｂに従って、携帯端末１０において実行されるプレビュー表示処理を示すフローチャートである。尚、第３実施形態において、第１実施形態で説明した処理と同一の処理には同一の符号を付し、その説明を省略する。この処理は、第１，第２実施形態の場合と同様に、携帯端末１０において、ユーザが本アプリ１４ｂの実行開始を指示した場合に実行される処理であり、ＯＳ１４ａが本アプリ１４ｂに対して割り当てたメインスレッドにおいて実行される処理である。
【００８２】
ＣＰＵ１１は、Ｓ１〜Ｓ３の処理を実行する。そして、Ｓ３の処理による確認の結果、プレビューファイルの生成が必要な場合（Ｓ４：Ｙｅｓ）、ＣＰＵ１１は、処理対象リスト１３ａにより示される各処理対象ファイルについて、ファイル単位で、そのデータ量を取得する（Ｓ８１）。そして、１番目の処理対象ファイルから順番に、１ファイルずつ、各ファイルに対応するデータの累積量を計数してゆき、そのデータの累積量が、第１上限値を超えない範囲の各ファイル（以下、「第１ファイル群」と称す）を特定する。そして、その特定された第１ファイル群の各ファイルについて、ページ単位で、プレビューファイルが無い全ページのプレビューファイルを生成し（Ｓ８２）、その生成された各ファイルをプレビューファイル格納エリア２０ｂに保存させる（Ｓ８３）。
【００８３】
次に、ＣＰＵ１１は、プレビューファイル格納エリア２０ｂに記憶されているプレビューファイルのうち、１番目の処理対象ファイルの先頭ページに対応するファイルを取得して、そのプレビュー画像をＬＣＤ１８に表示させる（Ｓ８４）。そして、Ｓ８１の処理で取得させた各処理対象ファイルのデータの合計値が、第１上限値以下の場合（Ｓ８５：Ｎｏ）、ＣＰＵ１１は、Ｓ１６の処理を実行し、本処理を終了する。一方、各処理対象ファイルのデータの合計値が、第１上限値を超えている場合（Ｓ８５：Ｙｅｓ）、ＣＰＵ１１は、処理対象リスト１３ａにより示される各処理対象ファイルから第１ファイル群を除いた残りの処理対象ファイルについて、先頭のファイルから順番に、１ファイルずつ、各ファイルに対応するデータの累積量を計数してゆき、そのデータの累積量が、第２上限値を超えない範囲の各ファイル（以下、「第２ファイル群」と称す）を特定する。そして、その特定された第２ファイル群の各ファイルが、これから起動する第１サブスレッドにおけるプレビューファイルの生成対象ファイルとされ、その第１サブレッドにおいてプレビューファイル生成処理が実行されるように設定を行う（Ｓ８６）。そして、このメインスレッドからＯＳ１４ａに対して、第１サブスレッドの起動を要求する（Ｓ８７）。
【００８４】
そして、Ｓ８１の処理で取得させた各処理対象ファイルのデータの合計値から、第１ファイル群のデータ量を除いた残りのデータ量が、第２上限値以下の場合（Ｓ８８：Ｎｏ）、ＣＰＵ１１は、Ｓ１６の処理を実行し、本処理を終了する。一方、各処理対象ファイルのデータの合計値から、第１ファイル群のデータ量を除いた残りのデータ量が、第２上限値を超えている場合（Ｓ８８：Ｙｅｓ）、ＣＰＵ１１は、処理対象リスト１３ａにより示される各処理対象ファイルから、第１ファイル群および第２ファイル群を除いた残りの処理対象ファイルが、これから起動する第２サブスレッドにおけるプレビューファイルの生成対象ファイルとされ、その第２サブスレッドにおいてプレビューファイル生成処理が実行されるように設定を行う（Ｓ８９）。そして、このメインスレッドからＯＳ１４ａに対して、第２サブスレッドの起動を要求する（Ｓ９０）。そして、ＣＰＵ１１は、Ｓ１６の表示切替処理を実行し、本処理を終了する。尚、第３実施形態では、表示切替処理（図４参照）において、Ｓ５１の処理が実行される場合、第１サブスレッド、及び、第２サブスレッドをそれぞれ終了させる。
【００８５】
図８に示すプレビュー表示処理によれば、処理対象ファイルが多い場合や、一の処理対象ファイルに含まれているページ数が多い場合などに、第１サブスレッドと、第２サブスレッドとにおいて分散させて、処理対象ファイルのプレビューファイルを生成させることができる。これにより、例えば、１番目の処理対象ファイルの全ページ数が１００ページであるなど多い場合に、１〜５０ページまでの各ページに対応するプレビューファイルを、第１サブスレッドにおいて生成させ、５１〜１００ページまでの各ページに対応するプレビューファイルを、第２サブスレッドにおいて生成させることができる。即ち、プレビューファイルを生成開始させるページを、所定のページ間隔を空けて２つ設け、それぞれ並行して後方のページに向かいながら、各ページのプレビューファイルを生成させることができる。よって、ＬＣＤ１８にプレビュー画像を表示させるファイル及びページがユーザにより指示された場合に、その指示に応じたプレビュー画像をＬＣＤ１８に表示させることができる可能性を向上させることができる。尚、第１サブスレッドで処理させるページ数（又は、データ量）や、第２サブスレッドで処理させるページ数（又は、データ量）は、適宜決めれば良い。
【００８６】
上記実施形態において、メインスレッドが第１スレッドの一例であり、サブスレッドや第１サブスレッドが第２スレッドの一例であり、第２サブスレッドが第３スレッドの一例である。プレビュー画像が出力画像の一例であり、プレビューファイルが表示データの一例である。第１上限値が第１所定量の一例であり、第２上限値が第２所定量の一例である。プレビューファイル生成処理（図３）を実行するＣＰＵ１１が第２スレッドデータ生成手段の一例である。優先処理ページに対応する一のプレビュー画像が、所定数の出力画像の一例に対応する。即ち、一が所定数の一例である。ＣＰＵ１１に制御されて動作するＬＣＤ１８が表示手段の一例である。
【００８７】
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【００８８】
例えば、上記実施形態では、携帯端末１０が情報処理装置の一例であったが、パーソナルコンピュータ、デジタルカメラなど各種の装置が画像処理装置の一例となり得る。
【００８９】
また、上記実施形態で挙げた処理データ上限値１４ｂ１や、第１上限値や、第２上限値は、適宜決めれば良い。
【００９０】
また、上記実施形態においては、携帯端末１０において、ユーザが本アプリ１４ｂの実行開始を指示した場合に、プレビュー表示処理（図２、図７、図８）を実行するものとして説明した。しかしながら、ＯＳ１４ａがアンドロイドＯＳである場合、アンドロイドの共有機能の共有出力先として、本アプリ１４ｂが選択されて、本アプリ１４ｂが起動される場合おいても、プレビュー表示処理を実行しても良い。
【００９１】
また、上記実施形態においては、携帯端末１０に着脱可能なメモリカード２０に処理対象ファイルや、プレビューファイルが記憶されるものとして説明した。しかしながら、例えば、携帯端末１０に内蔵されたフラッシュメモリ１４に記憶されても良いし、メモリカード２０およびフラッシュメモリ１４に分散させて記憶されても良い。
【００９２】
また、入力部、表示部、受付部、起動部、生成部、通知部、指示部、特定部、判定部などの各部は、ハードウェア単体、または、本発明のプログラムあるいはオペレーティングシステムなど本発明以外のプログラムを実行することにより動作するハードウェアであっても良い。また、各部は、複数のプログラムによる処理を組み合わせて動作するハードウェアであっても良い。
【００９３】
また、上記実施形態では、一のアプリケーションにより実行される処理の実行単位を意味する用語の一例として、スレッドという用語を用い、本発明を説明したが、本発明をスレッドに限定するものではない。即ち、スレッドは、同一の意味を有する他の用語や、同一の意味に相当する他の用語に置き換えられても良い。
【００９４】
また、上記実施形態のプレビュー表示処理（図２、図７、図８）では、プレビューファイル格納エリア２０ｂに、１番目の処理対象ファイルの先頭ページに対応するプレビューファイルが記憶されている場合、そのプレビューファイルを用いて、その先頭ページのプレビュー画像をＬＣＤ１８に表示させている。しかしながら、他のページに対応するプレビューファイルが記憶されている場合には、そのプレビューファイルを用いて、その他のページのプレビュー画像を表示させても良い。
【００９５】
また、上記実施形態において、インターレース形式やプログレッシブ形式の画像ファイルが、１番目の処理対象ファイルとなる場合には、先頭ページのデータ量が、処理上限値１４ｂ１（又は、第１上限値）を超えていても、一旦、処理上限値１４ｂ１（又は、第１上限値）までのデータ（即ち、画質は低いが画像全体を構成するデータ）について、メインスレッドでプレビューファイルを生成し、先頭ページのプレビュー画像をＬＣＤ１８に表示させても良い。そして、先頭ページの全データ（本来の画質の画像全体を構成するデータ）に対応するプレビューファイルをサブスレッドにおいて生成させ、それが生成された場合に、そのプレビューファイルを用いて、再度、先頭ページのプレビュー画像を、ＬＣＤ１８に表示させても良い。これにより、まず、画像ファイルのプレビュー画像（低画質のもの）を、ＬＣＤ１８に素早く表示させることができ、その後、高画質のプレビュー画像を、ＬＣＤ１８に表示し直すことができる。
【００９６】
また、上記実施形態の本アプリ１４ｂは、アンドロイドＯＳ上で動作させているが、アンドロイドＯＳに限らず、他のマルチスレッド対応ＯＳ上で動作させることも当然可能である。その場合にも、本実施形態と同様の作用や効果を奏する。
【００９７】
また、上記実施形態では、メインスレッド、及び、サブスレッドのうち、メインスレッドでのみ、入出力および表示に関する処理を実行させることができる場合の一例について説明したが、サブスレッドにおいても、入出力および表示に関する処理を実行させることができる場合には、メインスレッドにおいて、主に、プレビューファイルを生成させ、サブスレッドにおいて、主に、入出力および表示（プレビュー画像を表示）に関する処理を実行させても良い。
【００９８】
また、上記の第３実施形態では、各処理対象ファイルのデータの合計値が、第１上限値を超える場合に、第１サブスレッドを起動させているが、各処理対象ファイルの全ファイル数が、第１ファイル数を超える場合に、第１サブスレッドを起動させても良い。尚、この場合には、各処理対象ファイルの全ファイルのうち、第１ファイル数のファイルを、第１ファイル群とし、そのプレビューファイルをメインスレッドにおいて生成させる。同様に、上記の第３実施形態では、各処理対象ファイルのデータの合計値から、第１ファイル群のデータ量を除いた残りのデータ量が、第２上限値を超えている場合に、第２サブスレッドを起動させているが、各処理対象ファイルから第１ファイル群を除いた残りの全ファイル数が、第２ファイル数を超える場合に、第２サブスレッドを起動させても良い。尚、この場合には、各処理対象ファイルから第１ファイル群を除いた残りの全ファイルのうち、第２ファイル数のファイルを、第２ファイル群とし、そのプレビューファイルを第１サブスレッドにおいて生成させる。そして、各処理対象ファイルから第１ファイル群および第２ファイル群を除いた残りの全ファイルについて、そのプレビューファイルを第２サブスレッドにおいて生成させる。このように構成した場合にも、本実施形態と同様の作用や効果を奏する。
【００９９】
また、上記実施形態では、処理対象ファイル中の１ページを、優先処理ページとしているが、同一ファイル中のページであるかに関わらず、２以上の任意の数のページを優先処理ページとしても良い。その場合、「２以上の任意の数」が、「所定数」の一例に対応する。
【０１００】
また、上記実施形態では、サブスレッドにおいて、優先処理ページに対応するプレビューファイルの生成が終了した場合に、サブスレッドからメインスレッドに対して、スレッド間通信により、優先処理ページに対応するプレビューファイルの準備完了を通知している。これに対し、優先処理ページに対応するプレビューファイルだけでなく、他のページや、他の処理対象ファイルについてのプレビューファイルを生成した後に、優先処理ページに対応するプレビューファイルの準備完了を通知しても良い。但し、サブスレッドにおいて、未生成のプレビューファイルが１以上残っている間に、サブスレッドからメインスレッドに対して通知する。その場合、サブスレッドにおいて生成させるべきプレビューファイルの全数をｎと表すと、「（ｎ−１）以下の任意の数」が、「所定数」の一例に対応する。
＜その他＞
＜手段＞
技術的思想１記載の情報処理プログラムは、情報処理装置が備えるコンピュータにおいて実行されるものであって、前記コンピュータを、一のアプリケーションにより実行される処理の実行単位であるスレッドであって、その一のアプリケーションの実行開始に応じてオペレーティングシステムにより起動され、且つ、入力部および表示部に関する制御が許可されている第１スレッドにおいて、複数の出力画像に対応するデータが含まれる処理対象データを受付部に受け付けさせる受付制御手段と、その受付制御手段により処理対象データが受け付けられる場合に、前記第１スレッドから前記オペレーティングシステムに対して要求させ、その第１スレッドとは別に並行して処理が実行される前記スレッドであり、且つ、前記入力部および表示部に関する制御が制限されている第２スレッドを起動部に起動させる第２スレッド起動手段と、その第２スレッド起動手段により起動される第２スレッドにおいて、前記処理対象データのうち、２以上の出力画像に対応するデータについて、その出力画像を表示させるための表示データを生成部に生成させる第２スレッドデータ生成手段と、その第２スレッドデータ生成手段によって、所定数の出力画像を表示させるための表示データが生成された場合に、前記第２スレッドから前記第１スレッドに対して表示データの生成終了を通知部に通知させる通知制御手段と、その通知制御手段による通知が前記第１スレッドへ通知された場合に、その第１スレッドにおいて、前記第２スレッドデータ生成手段により生成された表示データを用いて出力画像を表示部に表示させる。
技術的思想２記載の情報処理プログラムは、技術的思想１記載の情報プログラムにおいて、前記コンピュータを、前記処理対象データのうち、優先して処理すべきデータを、前記第１スレッドから前記第２スレッドに対して指示部に指示させる指示制御手段、として機能させ、前記第２スレッドデータ生成手段は、前記第２スレッドにおいて、前記指示制御手段により指示されるデータについて、その表示データを優先して生成部に生成させ、前記通知制御手段は、前記第２スレッドにおいて、前記指示制御手段により指示されるデータについて、その表示データの生成が終了した場合に、その第２スレッドから前記第１スレッドに対して表示データの生成終了を通知部に通知させる。
技術的思想３記載の情報処理プログラムは、技術的思想１または２記載の情報プログラムにおいて、前記コンピュータを、前記第１スレッドにおいて、前記処理対象データのうち、一以上の出力画像全体に対応するデータにより構成され、且つ、総データ量が第１所定量以下である第１データについて、その出力画像を表示させるための表示データを生成部に生成させる第１スレッドデータ生成手段、として機能させ、前記第２スレッドデータ生成手段は、前記処理対象データから前記第１データを除いたデータについて、その出力画像を表示させるための表示データを前記第２スレッドにおいて生成部に生成させる。
技術的思想４記載の情報処理プログラムは、技術的思想３記載の情報プログラムにおいて、前記第２スレッド起動手段は、前記第１スレッドデータ生成手段による表示データの生成が完了した後に、前記第２スレッドを起動部に起動させる。
技術的思想５記載の情報処理プログラムは、技術的思想３または４に記載の情報プログラムにおいて、前記コンピュータを、前記第１スレッドデータ生成手段または第２スレッドデータ生成手段により生成される表示データを記憶部に記憶させる記憶制御手段と、前記処理対象データに対応する複数の出力画像のうち、その出力画像を表示させるための表示データが前記記憶部に記憶されていないものを出力画像単位で特定部に特定させる特定手段と、前記処理対象データのうち、前記特定手段により特定される出力画像に対応するデータの累積量が前記第１所定量を超えない範囲で、前記特定手段に出力画像を特定させる特定制御手段と、して機能させ、前記第１スレッドデータ生成手段は、前記処理対象データのうち、前記特定手段により特定された出力画像に対応するデータについて、その出力画像を表示させるための表示データを第１スレッドにおいて生成部に生成させる。
技術的思想６記載の情報処理プログラムは、技術的思想１記載の情報プログラムにおいて、前記コンピュータを、前記処理対象データから前記第１データを除いた残りのデータ量が第２所定量を超えるかを判定部に判定させる判定制御手段と、その判定制御手段により第２所定量を超えると判定される場合に、前記第１スレッドから前記オペレーティングシステムに対して要求させ、その第１スレッドおよび前記第２スレッドとは別に並行して処理が実行される前記スレッドであり、且つ、前記入力部および表示部に関する制御が制限されている第３スレッドを起動部に起動させる第３スレッド起動手段と、して機能させ、前記第２スレッドデータ生成手段は、前記処理対象データから前記第１データを除いた残りのデータのうち、一以上の出力画像全体に対応するデータにより構成され、且つ、総データ量が前記第２所定量以下である第２データについて、その出力画像を表示させるための表示データを生成部に生成させ、前記コンピュータを、前記第３スレッド起動手段により起動される第３スレッドにおいて、前記処理対象データから前記第１データおよび第２データを除いた残りのデータについて、その出力画像を表示させるための表示データを生成部に生成させる第３スレッドデータ生成手段、として機能させる。
技術的思想７記載の情報処理プログラムは、技術的思想１または２記載の情報プログラムにおいて、前記コンピュータを、前記第１スレッドにおいて、前記処理対象データのうち、データ形式がインターレース形式またはプログレッシブ形式の画像データについて、その出力画像を表示させるための表示データを生成部に生成させる第１スレッドデータ生成手段、として機能させ、前記第２スレッドデータ生成手段は、前記画像データの表示データであって、前記第１スレッドデータ生成手段により生成される表示データの出力画像よりも高画質の出力画像を表示させるための表示データを前記第２スレッドにおいて生成部に生成させ、前記表示制御手段は、前記第１スレッドデータ生成手段により前記画像データについての表示データが生成された場合に、その表示データを用いて出力画像を表示部に表示させ、その後、前記第２スレッドデータ生成手段により前記画像データについての表示データが生成された場合に、その表示データを用いて出力画像を表示部に表示させる。
技術的思想８記載の情報処理プログラムは、技術的思想６記載の情報プログラムにおいて、前記コンピュータを、前記処理対象データに対応する複数の出力画像うち、何れかの出力画像を印刷させる印刷指示が入力された場合に、前記第２スレッド起動手段により起動された第２スレッド、又は、前記第３スレッド起動手段により起動された第３スレッドを終了部に終了させるスレッド終了手段と、して機能させる。
＜効果＞
技術的思想１記載の情報処理プログラムによれば、第１スレッドとは別に並行して処理が実行される第２スレッドにおいて、処理対象データのうち、２以上の出力画像に対応するデータについて、その出力画像を表示させるための表示データを生成させることができる。よって、第１スレッドにおいて処理するデータ量を抑制できるので、第１スレッドにおいてデータ処理が長引き、入力に関する処理が遅延することを抑制できる。従って、ユーザから見て、入力操作が困難になる期間が長引くことを抑制できるという効果がある。また、所定数の出力画像を表示させるための表示データが第２スレッドにおいて生成された場合に、出力画像を表示部に表示させるので、出力画像を早く表示させることができるという効果がある。
技術的思想２記載の情報処理プログラムによれば、技術的思想１記載の情報処理プログラムの奏する効果に加え、処理対象データのうち、優先して処理すべきデータの表示データを、第２スレッドにおいて優先して生成させ、その表示データに対応する出力画像を早く表示部に表示させることができるという効果がある。
技術的思想３記載の情報処理プログラムによれば、技術的思想１または２記載の情報処理プログラムの奏する効果に加え、処理対象データのうち、総データ量が第１所定量以下である第１データについて、その出力画像を表示させるための表示データを、第１スレッドにおいて生成させることができる。よって、第１スレッドで処理するデータ量を、第１所定値以下に抑制できるので、第１スレッドにおいてデータ処理が長引き、入力に関する処理が遅延することを抑制できる。従って、ユーザから見て、入力操作が困難になる期間が長引くことを抑制しつつ、出力画像を表示部により早く表示させることができるという効果がある。また、第２スレッドにおいてデータ処理を行うためには、第１スレッドから第２スレッドを起動したり、処理すべきデータを指示するなどの時間が必要となる。そのため、第１スレッドから第２スレッドを起動させて、その第２スレッドで第１データに対応する表示データを生成させる場合と、第１スレッドでそのまま第１データに対応する表示データを生成させる場合とを比較すると、第１スレッドでそのままデータ処理を行った方が、第１データに対応する表示データを早く生成できる。従って、出力画像を表示部により早く表示させることができるという効果がある。
技術的思想４記載の情報処理プログラムによれば、技術的思想３記載の情報処理プログラムの奏する効果に加え、第１スレッドにおいて、第１データについての表示データの生成が完了した後に、第２スレッドを起動させることができる。第１スレッド、及び、第２スレッドがそれぞれ起動されている場合、第１スレッドと、第２スレッドとでそれぞれ並行して処理が実行されるため、第１スレッドに対して割り当てられる単位時間辺りの処理時間が短くなる。よって、第１スレッドでデータ処理を実行した後に、第２スレッドを起動することで、そのデータ処理が第１スレッドで行われる間に、第１スレッドに対して割り当てられる単位時間辺りの処理時間を増やせるので、第１スレッドにおいて、表示データをより早く生成させることができる。従って、出力画像を表示部により早く表示させることができるという効果がある。
技術的思想５記載の情報処理プログラムによれば、技術的思想３または４記載の情報処理プログラムの奏する効果に加え、処理対象データに対応する複数の出力画像のうち、その出力画像を表示させるための表示データが記憶部に記憶されてなく、且つ、その出力画像に対応するデータの累積量が第１所定量を超えない範囲内の出力画像が特定される。そして、処理対象データのうち、その特定された出力画像に対応するデータについて、第１スレッドで表示データが生成される。処理対象データのうち、既に表示データがあるデータについては、第１データに含まないので、その分、未生成の表示データを第１スレッドにおいて多く生成できるという効果がある。
技術的思想６記載の情報処理プログラムによれば、技術的思想３から５の何れかに記載の情報処理プログラムの奏する効果に加え、処理対象データから第１データを除いた残りのデータ量が第２所定量を超える場合に、第２スレッドでは、処理対象データから第１データを除いた残りのデータのうち、第２所定量以下までのデータである第２データについて、表示データの生成を開始させることができ、第３スレッドでは、処理対象データから第１データおよび第２データを除いた残りのデータについて、表示データの生成を開始させることができる。よって、多数の出力画像に対応するデータが処理対象データに含まれている場合などに、その多数の出力画像に対応する表示データを、各スレッドにおいて分散させ、且つ、並行して生成させることができる。従って、表示部に表示させる出力画像の変更がユーザなどにより指示された場合に、変更後の出力画像を素早く表示させることができる可能性を向上させられるという効果がある。
技術的思想７記載の情報処理プログラムによれば、技術的思想１または２記載の情報処理プログラムの奏する効果に加え、処理対象データのうち、データ形式がインターレース形式またはプログレッシブ形式の画像データについて、その表示データが第１スレッドにおいて生成された場合に、その表示データに対応する出力画像が表示部に表示される。その後、その出力画像よりも高画質の出力画像を表示させるための表示データが第２スレッドにおいて生成された場合に、その表示データに対応する出力画像が表示部に表示される。よって、まず先に、出力画像全体の概要を素早く表示部に表示させ、その後、高画質の出力画像全体を表示部に表示させることができるという効果がある。
技術的思想８記載の情報処理プログラムによれば、技術的思想６に記載の情報処理プログラムの奏する効果に加え、何れかの出力画像を印刷させる印刷指示が入力された場合に、第２スレッドまたは第３スレッドが終了するので、コンピュータにかかる処理の負担を軽減できるという効果がある。
【符号の説明】
【０１０１】
１０              携帯端末（情報処理装置の一例）
１１              ＣＰＵ１１（コンピュータの一例、受付部の一例、起動部の一例、生成部の一例、通知部の一例、特定部の一例、判定部の一例、指示部の一例、受付手段の一例、第２スレッド起動実行手段の一例、第２スレッドデータ生成実行手段の一例、通知手段の一例）
１３ｂ            優先処理ページ設定メモリ（指示部の一例）
１４ｂ            プレビュー表示アプリケーション（情報処理プログラムの一例）
１４ｂ１          処理データ上限値（第１所定量の一例）
１６              操作キー（入力部の一例）
１７              タッチパネル（入力部の一例）
１８              ＬＣＤ（表示部の一例）
２０              メモリカード（記憶部の一例）
Ｓ１，Ｓ２        （受付制御手段の一例）
Ｓ１０、Ｓ６２，Ｓ６５、Ｓ８２    （第１スレッドデータ生成手段の一例）
Ｓ１１、Ｓ２３、Ｓ２７、Ｓ３１、Ｓ６６、Ｓ８３    （記憶制御手段の一例）
Ｓ１３、Ｓ４９    （指示制御手段の一例）
Ｓ１５、Ｓ８７    （第２スレッド起動手段の一例）
Ｓ２４            （通知制御手段の一例）
Ｓ４２            （表示制御手段の一例）
Ｓ５１            （スレッド終了手段の一例）
Ｓ８２            （特定手段の一例、特定制御手段の一例）
Ｓ８８            （判定制御手段の一例）
Ｓ９０            （第３スレッド起動手段の一例）

【図１】
0005472177.tif 000002
【図２】
0005472177.tif 000003
【図３】
0005472177.tif 000004
【図４】
0005472177.tif 000005
【図５】
0005472177.tif 000006
【図６】
0005472177.tif 000007
【図７】
0005472177.tif 000008
【図８】
0005472177.tif 000009