Cần trợ giúp để ngăn chặn chuỗi Chủ đề nền. Tôi đang cố dừng một chuỗi công nhân nền. Đây là những gì tôi đang làm:Cần trợ giúp để ngăn chặn chủ đề của BackgroundWorker
Mở nút dừng nhấp chuột (UI layer):
if (backgroundWorker.IsBusy == true &&
backgroundWorker.WorkerSupportsCancellation == true)
{
backgroundWorker.CancelAsync();
}
Mở sự kiện DoWork (lớp UI):
if ((backgroundWorker.CancellationPending == true))
{
e.Cancel = true;
}
else
{
//Function which progresses the progress bar is called
//here with its definition in business layer
}
Khi sự kiện DoWork là bắn và tôi kiểm soát chương trình là trong các chức năng được xác định trong lớp kinh doanh, làm thế nào để tôi trở lại sự kiện DoWork để thiết lập 'e.Cancel = true'?
.. Và nếu bạn không
stuartd
@Stuart - Điều đó đúng, như đã đề cập trong câu trả lời. Nếu không có vòng lặp, không có cách nào tốt để tắt nó mà không ép buộc chủ đề từ luồng GUI. –
@ Øyvind Knobloch-Bråthen - Xin vui lòng cho tôi biết cách BAD để tiêu diệt chủ đề Backgroundworker một cách mạnh mẽ từ chủ đề GUI là gì. (không có vòng lặp trong DoWork) – Zeeshanef