DOBON.NET DOBON.NETプログラミング掲示板過去ログ

スレッドが自分で終了するとプログラムが固まってしまう。

  • 題名: スレッドが自分で終了するとプログラムが固まってしまう。
  • 著者: こうの
  • 日時: 2005/08/10 14:21:06
  • ID: 12152
  • この記事の返信元:
    • (なし)
  • この記事への返信:
    • (なし)
  • ツリーを表示
環境/言語:[XP(SP2) Framework1.1]
分類:[.NET]

 モジュールの"main"で順にFormを開いています。
1つのFormを閉じる時、次のFormを変数に設定していないとプログラムを終了します。

Public nextForm as Form

Sub main()
nextForm = New form1 'まず画面1をロード

Do
Dim F As Form = nextForm
nextForm = Nothing
Application.Run(F)
Loop While (Not nextForm Is Nothing)
End sub

 あるFormの"TreeView"オブジェクトからスレッドを実行しています。
そのスレッドを他から終了するには問題ないのですが、スレッド内でエラーを
発見し、ループを抜けて終了すると"TreeView"オブジェクト内が真っ白になり、
Formが固まってしまいます。
 時にはプログラムが自動終了してしまうように見えます。
(Application.Run(F)の行で"そのハンドルは既にされています"とのエラーが
でる)
但し、Formの"Closing"イベント等は発生していません。

よろしくお願い致します。

DOBON.NET | プログラミング道 | プログラミング掲示板