Я запускаю Parallel.ForEach в качестве задачи. Я хочу выйти из этого, когда определенное условие выполнено. Рассмотрим ниже:
Dim opt As System.Threading.Tasks.ParallelOptions = New System.Threading.Tasks.ParallelOptions With {
.MaxDegreeOfParallelism = My.Settings.ssUserMaxThreads}
Dim ttask = Task.Factory.StartNew(Sub()
Parallel.ForEach(filesList, opt,
Sub(rom As String)
ProcessROM(rom, romDS, ClassHash)
totalCount += 1
Debug.WriteLine("TotalCount: " & totalCount)
If totalCount > LimitedNumber Then
Debug.WriteLine("Limited number exceeded")
'What here?
End If
con.Invoke(CType(Sub()
ReportProgress()
End Sub, Action))
Application.DoEvents()
End Sub
)
End Sub)
Do Until totalCount > LimitedNumber
Application.DoEvents()
Loop
Как мне выйти из этого Parallel.ForEach
ИЛИ Task
рано, если totalCount
> LimitedNumber
?