クラス化したプログラムが、処理に数十分時間を要する場合に、経過時間やその他データ処理のステータスなどを拾いたい場合、どのようなやり方をすればよろしいですか?
>クラス化したプログラム
よくわからないので
「重い処理をするクラスから時間をとりだす」と解釈すると
その処理を1つ1つ全てクラスで処理してるならステータスを表すプロパティなどを用意してそこにどんどん値を代入してだけ。
というか、要するにその処理によって出来るかわからない
> クラス化したプログラムが、処理に数十分時間を要する場合に、
> 経過時間やその他データ処理のステータスなどを拾いたい場合、
やりたい事というのは、
(1) 既存プログラムの処理時間をテストしたい。
(2) 進捗状況を通知あるいは表示する機能を実装したい。
のどちらでしょうか?
ご回答ありがとうございます。
やりたいのは(2)ですが、クラスを呼出す側とクラス側で、進捗状況の
情報のやり取りをしたいと思っています。
よろしくお願いいたします。
> クラスを呼出す側とクラス側で、進捗状況の
> 情報のやり取りをしたいと思っています。
その場合の実装方法としては、
(a) 進捗状況を「イベント」として公開する
(b) 進捗状況を「プロパティ」として公開する
の 2 つのパターンがあります。併用される場合もありますね。
呼び出す側を「親」、呼び出される側を「子」とした場合、
子が、自身の状態を適宜通知するパターンならば (a)、
親が、子に進捗状態を問い合わせるパターンならば (b) です。
どちらが良いかは、クラスの目的によっても変わってきますが、
進捗状況を、たとえばフォームなどに常時表示するタイプならば、
(a) の方が効率が良いでしょうね。
ありがとうございました。
実際のコーディング時には、イベント化等でわからないことが出てきそう
ですが、それはまたその際にご質問させていただきます。
とりあえずクローズさせていただきます。
またその節はよろしくお願いいたします。
ツイート | ![]() |