重複の可能性
: 「クロススレッド操作が無効です: 作成されたスレッド以外のスレッドからアクセスされた lbFolders を制御します。」というエラーが表示されるのはなぜですか?
ウィンドウ ハンドルが作成されるまで、Invoke または BeginInvoke をコントロールで呼び出すことはできません
スレッドに問題があります。
COM ポートから 600 ミリ秒ごとにデータを取得しています。デバッグ モードでは数秒後にエラーが発生しますが、非デバッグ実行モードでは 1 ~ 2 分後にエラーが発生しますが、エラーは持続します。
私が得ているエラーは、各スレッドで呼び出される関数の一部で発生しています。
エラーの写真は次のとおりです。
コードの他の部分:
private void LoadData()
{
while (td.IsAlive)
{
eng.GetSpeedKmh();
eng.GetEngineRpm();
eng.GetCalculatedEngineLoadValue();
eng.GetFuelLevelInput();
eng.GetEngineTemp();
eng.MAF();
System.Threading.Thread.Sleep(600);
}
}
これを修正するにはどうすればよいですか?