2 つの機能を同時に実行したい。
最初の関数は、コンピューター内のファイルの総数をカウントし、結果を 1 つの DatagridView に表示します。
2 番目の関数では、1 つの進行状況バーの値がファイルの総数に応じて変更されます。つまり、すべてのファイルが DatagridView にバインドされると、進行状況バーの値が 100 に設定されます。
2 つの関数の作業を同期させたいです。2 つのスレッドを使用していますが、結果が表示されず、例外が発生しました。
私は何をすべきか ?
私のコードは
ThreadStart threadstatr = new ThreadStart(Function_1);
ThreadStart threaProgress = new ThreadStart(Function_2);
Thread thread = new Thread(threadstatr);
Thread threadpro = new Thread(threaProgress);
thread.Start();
threadpro.Start();
thread.Join();
threadpro.Join();
void Function_2()
{
int coun = ((Convert.ToInt32(label1.Text)) / 100); //here label1 represents total no. of files
for (int i = 0; i < coun; i++)
{
backgroundWorker1.ReportProgress(i);
}
}
例外は「入力文字列が正しい形式ではありませんでした」です。ラベル自体が更新される機会がないため