Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
Hỏi ? Cách khắc phục đơ form khi dùng Thread
20:12 22-01-2018
479 lượt xem
6 bình luận
23:59 09-03-2018
Cho em hỏi làm thế nào để chạy nhiều thread mà không bị vấn đề đơ form ạ? cám ơn !
VD:
for (int i = 0; i < 5; i++)
{
var thr = new Thread(new ThreadStart(new MethodInvoker(delegate
{
for (int t = 0; t < 100000; t++)
{
this.Invoke(new MethodInvoker(delegate
{
richTextBox1.Invoke((System.Action)(() => { richTextBox1.ScrollToCaret(); richTextBox1.AppendText(t.Tostring() + Environment.NewLine); }));
}));
}
})));
thr.IsBackground = true;
thr.Start();
}
bạn cần Sleep nó
thêm Thread.Sleep(1); vào trong loop
OK. Chúc bạn thành công
Cám ơn anh nhiều em làm được rồi ! I love you <3
Sử dụng async/await keywords C#:
private async void BtnWrite_Click()
{
await Task.Run(async () =>
{
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 100000000; j++)
{
await Task.Delay(1);
richtextbox.Append($"Write {i}:{j}");
}
}
});
}