Câu hỏi được gắn thẻ «task-parallel-library»

Thư viện song song tác vụ là một phần của .NET Framework kể từ .NET 4. Đây là một bộ API để cho phép các nhà phát triển lập trình các ứng dụng không đồng bộ.



3
Cách thích hợp để thực hiện một nhiệm vụ không bao giờ kết thúc. (Bộ hẹn giờ so với công việc)
Vì vậy, ứng dụng của tôi cần thực hiện một hành động gần như liên tục (với khoảng thời gian tạm dừng 10 giây giữa mỗi lần chạy) miễn là ứng dụng đang chạy hoặc yêu cầu hủy. Công việc cần làm có khả năng mất đến 30 giây. Tốt …

3
Cần hiểu cách sử dụng SemaphoreSlim
Đây là mã tôi có nhưng tôi không hiểu những gì SemaphoreSlimđang làm. async Task WorkerMainAsync() { SemaphoreSlim ss = new SemaphoreSlim(10); List<Task> trackedTasks = new List<Task>(); while (DoMore()) { await ss.WaitAsync(); trackedTasks.Add(Task.Run(() => { DoPollingThenWorkAsync(); ss.Release(); })); } await Task.WhenAll(trackedTasks); } void DoPollingThenWorkAsync() { var msg = Poll(); if …



7
Task.Run với (các) Tham số?
Tôi đang làm việc trong một dự án mạng đa tác vụ và tôi là người mới Threading.Tasks. Tôi đã thực hiện một đơn giản Task.Factory.StartNew()và tôi tự hỏi làm thế nào tôi có thể làm điều đó với Task.Run()? Đây là mã cơ bản: Task.Factory.StartNew(new Action<object>( (x) => { …

4
Có bất cứ điều gì giống như BlockingCollection không đồng bộ <T> không?
Tôi muốn awaittrên kết quả của BlockingCollection&lt;T&gt;.Take()không đồng bộ, vì vậy tôi không chặn luồng. Tìm kiếm bất cứ điều gì như thế này: var item = await blockingCollection.TakeAsync(); Tôi biết tôi có thể làm điều này: var item = await Task.Run(() =&gt; blockingCollection.Take()); nhưng điều đó giết chết toàn …




2
Cách tốt nhất để chuyển đổi phương thức không đồng bộ dựa trên cuộc gọi lại thành tác vụ có thể chờ đợi
Cách tốt nhất để chuyển đổi / bọc một phương thức không đồng bộ "cổ điển" sử dụng lệnh gọi lại một thứ gì đó trả về một Nhiệm vụ (có thể chờ đợi) là gì? Ví dụ: đưa ra phương pháp sau: public void GetStringFromUrl(string url, Action&lt;string&gt; onCompleted); Cách …

3
Làm thế nào để tạo một tác vụ (TPL) chạy một chuỗi STA?
Sử dụng Chủ đề khá đơn giản Thread thread = new Thread(MethodWhichRequiresSTA); thread.SetApartmentState(ApartmentState.STA); Làm thế nào để hoàn thành điều tương tự bằng cách sử dụng Tác vụ trong ứng dụng WPF? Đây là một số mã: Task.Factory.StartNew ( () =&gt; {return "some Text";} ) .ContinueWith(r =&gt; AddControlsToGrid(r.Result)); Tôi nhận …

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.