• ベストアンサー

VB6でマルチスレッド?

VB6で、2つの関数を同時に実行させる?方法が知りたいです。 例えば、A関数,B関数共に中でループしていて、プログラムで以下のように書いた場合、A関数が終了するまでB関数にいきません。 例1) call A() call B() ボタンイベントにそれぞれA,B関数を書いて、Aボタン、Bボタンと押せば、両方の関数共、実行中になります。 これをボタンイベントでなくて、ブログラムで(例1のように)実行させたいのですが、どのように記述すればよいのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • isle
  • ベストアンサー率51% (77/150)
回答No.2

DoEvents入れて互いに呼び合っているんですか? デッドロックを招くのでVB(というかイベントドリブンのフレームワーク一般)でそういうコーディングはお勧めしません。 タイマーイベントのコールバックで少しずつ処理を進めるように作るのが一般的です。

その他の回答 (2)

  • lord_chan
  • ベストアンサー率24% (20/82)
回答No.3

MSDNを調べてみるとマルチスレッドの方法らしき記述があります。ただめんどそうなのでEXEを分けた方が早そうです。値の受け渡しは共有メモリを使えばよいと思います。

回答No.1

VB6自体ではマルチスレッドはできません。 ファイバーでマルチスレッドのような動作を実現できますが、かなり面倒くさい。 なぜAB同時に実行させたいのですか?

参考URL:
ftp://ftp.grapecity.com/pdf/appleman2000_01.pdf

関連するQ&A