.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"; });
}