Как запустить другой backgroundWorker, если основной фоном работает в одном методе?как запустить другую BackgroundWorker, если сначала BackgroundWorker Завершить одним способом
private void button1_Click(object sender, EventArgs e)
{
CopyWorker.RunWorkerAsync();
EnkripsiWorker.RunWorkerAsync();
CompressWorker.RunWorkerAsync();
}
Я хочу попробовать запустить одним кликом, но только первый работает BackgroundWorker. Итак, как запустить все BackgroundWorker. можно ли это сделать?
как этот
private void button1_Click(object sender, EventArgs e)
{
CopyWorker.RunWorkerAsync();
if (CopyWorker.RunWorkerCompleted == true)
{
EncryptWorker.RunWorkerAsync();
}
if (EnkripsiWorker.RunWorkerCompleted == true)
{
CompressWorker.RunWorkerAsync();
}
}
Я установил его, и код правильный [EDIT]
CopyWorker.RunWorkerAsync();
CopyWorker.RunWorkerCompleted += (s, a) => EnkripsiWorker.RunWorkerAsync();
EnkripsiWorker.RunWorkerCompleted += (s, a) => Compress.RunWorkerAsync();
Не имеет смысла писать такой код. Просто CopyWorker * также * выполняет работу Encryptworker. И EnkripsiWorker на работу CompressWorker. Хотя при запуске CompressWorker очень мало смысла. Взгляните на класс Task, у вас будет больше шансов, чтобы это правильно. –
Я отредактировал ваш заголовок. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –
Спасибо @John :) – sloqye