Класс task и background worker - C#
Формулировка задачи:
У нас есть приложение с пользовательским интерфейсом. Во время работы приложения происходят длительные вычисления. в чем будет различие применения этих классов? Может кто-нибудь объяснить?
Решение задачи: «Класс task и background worker»
textual
Листинг программы
public void WhileTrue(Action<int> CallBackMethod) //Action<int> - int означает что тут 1 агрумент типа int. типа - OnTickMethod(int i) { (new Thread(delegate () { int i = 0; while(true) { Thread.Sleep(1000); i = (i > 60) ? 0 : i + 1; CallBackMethod(i); } })).Start(); } public void Main() { WhileTrue(OnTickMethod); // Отправляем в аргументе ссылку на функцию. } public void OnTickMethod(int i) { this.Invoke(new Action(() => // Конструкция из Invoke позваляет другому процессу взаимодействовать с интерфейсом - иначе краш. Только в WindowsForms! { richTextBox1.Text = i.ToString(); })); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д