甲府方重信Blog

...Shigenobu Koufugatas Blog

  • Increase font size
  • Default font size
  • Decrease font size
Error
  • Unable to load Cache Storage: database
  • Unable to load Cache Storage: database
  • Unable to load Cache Storage: database
  • Unable to load Cache Storage: database
  • Unable to load Cache Storage: database
  • Unable to load Cache Storage: database
  • Unable to load Cache Storage: database
  • Unable to load Cache Storage: database
Home 業務日誌 Adaプログラミング Adaチュートリアル セクション9.3 その他のText_IO機能

Adaチュートリアル セクション9.3 その他のText_IO機能

E-mail Print PDF

セクション9.3 - その他のText_IO機能

ここではプログラマーが知っておくと役に立つText_IOのその他のについて触れていきます。

 

 

Text_IOは、Current_Input関数、Current_Output関数、Current_Error関数を定義しています。それぞれの戻り値はFile_Type型になります。Current_Error関数はCurrent_Outputに似ていますが、エラーメッセージのために使用されるべきです。ここでは、エラーメッセージを表示するサンプルコードを掲載します。

  Put(Current_Error, "Error - the widget file is missing.");

Procedures Set_Inputプロシージャー、Set_Outputプロシージャー、Set_Errorプロシージャーはプログラマーに現在のinput、output、errorのファイルを設定する事を可能にします。例えば、もしプログラマーが全てのエラーメッセージをファイル「error」に書き出したい場合は、次のようにします。

  Error_File : File_Type;
-- ...
Create(Error_File, Out_File, "error");
Set_Error(Error_File);

AdaとAdaが動作するオペレーティング・システムは、システム全体の性能を向上させるためにユーザーに出力を送るのに遅延を生じさせるかもしれません。これはバッファリングと呼ばれています。通常、バッファリングはよいアイディアですが、プログラマーが出力をただちに表示させたい場合にはそうではありません。この場合、Flush操作を利用し、ただちに全てのデータをあたえられたファイルに出力します。(このデフォルト値は、Current_Outputとなります)

時にはプログラマーは、ユーザーがキーを押したかどうか、どのキーが押されたかを判定するために、キーボードをチェックしたい時があります。Ada 95ではこのためのプロシージャーは、Get_Immediateと呼ばれています。Get_Immediateを使う際には、いくつかの注意事項があります。

  • いくつかのシステムにおいては、Get_Immediateの実装をすることができません。この場合、Adaは(明らかに)このプロシージャーを実行することができません。
  • マルチプロセッシングシステムにおいては、何が起きているかを継続的にチェックするのは良いアイディアとは言えない場合があります。これはポーリングと呼ばれ、ポーリングはシステム全体の性能を劣化することがあります。もしプログラマーがキーが押されたかどうかを待つだけの予定でれあれば、Get_Immediateの代わりに、Getを使用してください。

出典: http://www.adahome.com/Tutorials/Lovelace/s9s3.htm

Last Updated on Saturday, 14 January 2012 13:45  

ニュース速報

2010年7月26日から28日にかけて、LPIC301の資格対策講座を開きました。今年二回目の定期開催です。

国内では、LPIC301の資格対策を定期開催しているのは、リナックスアカデミーだけだそうです。

 

授業の内容は、

1、キャパシティプランニング

2、ディレクトリサービスの概念

3、LDIFとLDAPコマンド

4、LDAPとSambaとの統合、LDAPとApacheの統合

5、LDAPレプリケーションの概要

6、LDAPのセキュリティ

7、PerlからLDAPにアクセスする

8、模擬試験

となっています。

今回の受講生は、4名でした。

時間は、ややあまり気味でした。演習にひっかからないようになって、スムーズに動くようになったのが理由と思われます。

LDAP Syncの演習を追加しようか、検討しようと思います。

アンケートを見る限り、スキルによって時間が足りなかったという人と、丁度よかったという人に分かれました。

テキストは次回までに、若干修正が必要なようです。

受講生の皆様、お疲れ様でした。