.NET 4.x Выполнение обращения к базе в другом потоке - C#

Узнай цену своей работы

Формулировка задачи:

Столкнулся с популярной проблемой, работаю с MySQL базой, некоторые запросы обрабатываются около 50-ти секунд, все это время форма висит, погуглив, понял, что нужно делать запрос на базу в другом потоке, появилась проблема в реализации Есть функция
 public void base_tick()
{
//работа с базой
}
Требуется, что бы на нажатие кнопки функция запускалась в отдельной потоке, при этом, было уведомление пользователю, что происходит запрос на базу;
private void button1_Click(object sender, EventArgs e)
{
//например
label1.text="Грузится";
base_tick(); //в отдельном потоке
label1.text="Не грузится";
}
Спасите пожалуйста)

Решение задачи: «.NET 4.x Выполнение обращения к базе в другом потоке»

textual
Листинг программы
        private void button1_Click(object sender, EventArgs e)
        {
            label1.Text = "Working...";
            new Thread(base_tick){IsBackground = true}.Start();
        }
 
        public void base_tick()
        {
            //работа с базой
            ...
            //
            Invoke((MethodInvoker) delegate { label1.Text = "Completed"; });
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.143 из 5
Похожие ответы