プロが教えるわが家の防犯対策術!

お世話になります。
VB6において、ひとつのアプリケーション中で使用できるTimerコントロールの数は、一般に何個くらいが限界でしょうか。
多数のTimerを使用することで、メソッドの呼び出しが極端に遅延するなどの影響は有り得るでしょうか。

現在作成中のアプリでは、既に15個ほどのTimerコントロールを使っています。
ここにフォームを1枚追加し、更にTimerを10個増やそうとしています。
いずれも、Interval=1000で動作させます。
Windows2000での実行が前提です。

環境やOSによって条件等異なると思いますが、どうぞお教えください。

A 回答 (2件)

Windows95、Windows NTなら、


アクティブにできるタイマコントロールの数に制限はありませんが、
あくまで基本的にはという事です。

しかし、1秒単位でのインターバルとはまた短いですねぇ。
タイマを多用すれば、精度は多少落ちます。
私自身、15個ものタイマコントロールを使ったアプリケーションは、
お目に掛かった事はありませんね。
使っても2,3個でしょうか。

タイマイベントを使用せず一定間隔で処理を行う事も可能ですが、
単純に考えるとCPUを使いますので、
コントロールを使う方が楽でしょうね。
コードの書き方でも変わりますので、
テスト的に実行してみるのが一番じゃないでしょうか?
    • good
    • 0
この回答へのお礼

アプリの目的は電光掲示板10台分のシミュレートです。業務で使います。スレッドを使えると楽なのですが、そもそもこういう用途にVBというチョイスが間違っているのかもしれません。
ありがとうございました。

お礼日時:2007/01/31 23:57

タイマーの各処理で メッセージループが止まってしまうのであれば 遅延の発生は仕方が無いでしょう



VB6のフォームの制限に コントロール名の総数が254までとなっています
Timer1 Timer2などと命名すると制限に引っかかるようになります
Timer1(0) Timer1(1) などのようにコントロール配列にした場合はコントロール名としては Timer1を共有するのでこの制限を回避できます

タイマーのインターバルが同じ場合 イベントの発生順は保障されないので タイマーのイベント同士に依存関係があるのでした見直したほうがいいでしょう
    • good
    • 0
この回答へのお礼

下にも書きましたが、電光掲示板のシミュレートをしようと考えています。Timer数はもうちょっとシビアな制限があると思っていましたが、どうもそうでもなさそうですね。
とりあえず組んでみます。ありがとうございました。

お礼日時:2007/01/31 23:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!