by Anonymous » 25 Feb 2025, 08:54
Hier ist die Dokumentation zu wie zu: stornieren eine parallel.for oder foreach sloop < /p>
Und ich habe eine Methode geschrieben, um diese Funktion zu verwenden: < /p>
Code: Select all
static async Task SpreadCheer(CancellationToken cancellationToken)
{
cancellationToken.ThrowIfCancellationRequested();
var friends = await GetFriends();
Parallel.ForEach(friends,
new ParallelOptions
{ CancellationToken = cancellationToken},
friend=>
{
SendCake(friend);
// (*1)
});
}
Im Beispiel in der Dokumentation in der letzten Zeile jeder Schleife (*1) . Es fügt eine CancellationToken hinzu. Ich kann auch sehen, dass Parallel.foreach nach der Verarbeitung eines Elements bereits verarbeitet wird, wenn das Token storniert wird. Es wirft auch unmittelbar vor dem Start von Schleifen, wenn das Token von Anfang an Stornierung ist. Es ist auch meine Erfahrung mit dem Laufen und Testen dieses Code Code> in Position (*1) ? A Unit -Test, der dies abdeckt, ist kein Code, der für den Durchgang dieses Tests erforderlich ist. Soweit ich das beurteilen kann. Der Grund für die Stornierung ist, dass ich einen Azure -Webjob zum SpreadCheer habe, Spreading -Jubel kann eine Weile dauern, und
ich möchte anmutig aufhören, Jubel zu verbreiten, wenn Azure mir ein Abschaltsignal schickt.
Ich möchte niemanden durcheinander bringen.
Hier ist die Dokumentation zu wie zu: stornieren eine parallel.for oder foreach sloop < /p>
Und ich habe eine Methode geschrieben, um diese Funktion zu verwenden: < /p>
[code]static async Task SpreadCheer(CancellationToken cancellationToken)
{
cancellationToken.ThrowIfCancellationRequested();
var friends = await GetFriends();
Parallel.ForEach(friends,
new ParallelOptions
{ CancellationToken = cancellationToken},
friend=>
{
SendCake(friend);
// (*1)
});
}
[/code]
Im Beispiel in der Dokumentation in der letzten Zeile jeder Schleife (*1) . Es fügt eine CancellationToken hinzu. Ich kann auch sehen, dass Parallel.foreach nach der Verarbeitung eines Elements bereits verarbeitet wird, wenn das Token storniert wird. Es wirft auch unmittelbar vor dem Start von Schleifen, wenn das Token von Anfang an Stornierung ist. Es ist auch meine Erfahrung mit dem Laufen und Testen dieses Code Code> in Position (*1) ? A Unit -Test, der dies abdeckt, ist kein Code, der für den Durchgang dieses Tests erforderlich ist. Soweit ich das beurteilen kann. Der Grund für die Stornierung ist, dass ich einen Azure -Webjob zum SpreadCheer habe, Spreading -Jubel kann eine Weile dauern, und [url=viewtopic.php?t=14917]ich möchte[/url] anmutig aufhören, Jubel zu verbreiten, wenn Azure mir ein Abschaltsignal schickt. [url=viewtopic.php?t=14917]Ich möchte[/url] niemanden durcheinander bringen.