Mam następujący kod:Przekazywanie parametru Metoda z zastosowaniem Task.Factory.StartNew
var task = Task.Factory.StartNew(CheckFiles, cancelCheckFile.Token, TaskCreationOptions.LongRunning, TaskScheduler.Default);
private void CheckFiles()
{
//Do stuff
}
Chcę teraz zmienić CheckFiles zaakceptować i całkowitą i odniesienie BlockingCollection
private void CheckFiles(int InputID, BlockingCollection<string> BlockingDataCollection)
{
//Do stuff
}
mogę” t wydaje się znaleźć sposób na uruchomienie tego zadania, tak jak to zrobiłem powyżej.
Czy możesz pomóc?
Dzięki
Dzięki. Zacznę je w pętli. Jednak potrzebuję go jako LongRunning. Mój oryginalny program działał z jednym plikiem, ale teraz musi zrobić kod na wielu plikach. Dlatego muszę podać ID, BlockingCollection, CancellationTokenSoure i StreamReader. Nie dodałem jednak tych dodatkowych parametrów w pytaniu: – Jon
@Jon: Tylko sprawdź zakres tych obiektów ... Właśnie wspomniałem o podpowiedzi LongRunning jako o czymś do rozważenia - powiem, że rzadko jest to dobry pomysł aby używać LongRunning, szczególnie w .NET 4, jeśli uruchamiasz wiele zadań (np. praca w pętli), ponieważ wątek zazwyczaj zapewnia lepsze zachowanie. –
Pętla służy do uruchamiania zadań. Maksymalnie 4-6 – Jon