Tôi có đoạn mã sau:Đi qua một tham số phương pháp sử dụng Task.Factory.StartNew
var task = Task.Factory.StartNew(CheckFiles, cancelCheckFile.Token, TaskCreationOptions.LongRunning, TaskScheduler.Default);
private void CheckFiles()
{
//Do stuff
}
bây giờ tôi muốn sửa đổi CheckFiles để chấp nhận và số nguyên và một tham chiếu BlockingCollection
private void CheckFiles(int InputID, BlockingCollection<string> BlockingDataCollection)
{
//Do stuff
}
Tôi có thể' t dường như tìm cách bắt đầu tác vụ này như tôi đã làm ở trên.
Bạn có thể trợ giúp không?
Cảm ơn
Cảm ơn. Tôi sẽ bắt đầu chúng trong một vòng lặp. Tuy nhiên tôi cần nó như LongRunning. Chương trình ban đầu của tôi làm việc với một tập tin nhưng bây giờ nó cần phải làm một số mã trên nhiều tập tin. Vì vậy, tôi cần phải vượt qua ID, BlockingCollection, CancellationTokenSoure và StreamReader. Tôi đã không đề cập đến các tham số phương thức phụ trong câu hỏi tuy nhiên – Jon
@Jon: Chỉ cần đảm bảo kiểm tra phạm vi của các đối tượng đó ... Tôi vừa đề cập đến gợi ý LongRunning như một cái gì đó để bạn xem xét - Tôi sẽ nói rằng nó hiếm khi là một ý tưởng hay để sử dụng LongRunning, đặc biệt là trong .NET 4, nếu bạn đang bắt đầu nhiều tác vụ (ví dụ: làm việc trong một vòng lặp), vì threadpool thường sẽ cung cấp hành vi tốt hơn. –
Vòng lặp chỉ là để bắt đầu các nhiệm vụ. Tối đa là 4-6 – Jon