|
分類:[.NET 全般]
お世話になります。 当方VB.net(VS2015 .Net4.5.1)で開発をしております。
DGVからデータを読み込み、読み込み後には完了マークを付ける というプログラムがあるのですが、 未読み込みのデータのみ表示させた上で、2つ以上同時に読み込ませるとエラーが起きました。 全てのデータを表示させて読み込ませるとうまくいきます。
不具合の該当箇所はこちらです
If ret Then '途中で処理をキャンセルされるとretがFalseに
(〜ここで処理列の読み込みフラグをTrueに〜) frmResult.setSuccessStep() Else Throw New Exception(中断されたデータ) End If
この処理を読み込む列の回数繰り返すという全体の処理になっていますが、 Trueで進みEnd IFまで進み、ステップ実行をすると、Throw New Exceptionに進みます。 このときretはTrueのままでした。
@条件式がTrueなのにElseを通っているということでしょうか? AなぜElse自体を通らずその下に直接行くのでしょうか Bおそらく読み込みフラグをTrueに変える処理と、読み込み済みは表示しない処理の兼ね合いでのエラーだと思うのですが、非同期処理でもないのに同時進行でかかわってくることはあり得るのでしょうか?
拙い説明で申し訳ありませんが、何か解決の糸口になりそうなことがあれば お教えいただければ幸いです。
|