Laden...

Backgroundworker direkt abbrechen

Erstellt von ado683 vor 5 Jahren Letzter Beitrag vor 5 Jahren 722 Views
A
ado683 Themenstarter:in
27 Beiträge seit 2019
vor 5 Jahren
Backgroundworker direkt abbrechen

Hallo zsm,

ist es möglich den Backgroundworker direkt abzubrechen?
Das Problem ist ich habe eine CancellationPending rausgeschickt, jedoch wird die if Anfrage davon erst nach einer Acceptclient Methode ausgeführt.

Kann ich das iwie umgehen?


 TcpClient client = listener.AcceptTcpClient();

                    if (worker.CancellationPending)
                    {
                        e.Cancel = true;
                        return;
                    }

diese if anfrage würde ich halt gerne praktisch direkt aufrufen wenn man auf CancelAsync(); aufruft.

4.939 Beiträge seit 2008
vor 5 Jahren

Arbeite mit TcpListener.AcceptTcpClientAsync innerhalb einer Task und einer CancellationTokenSource, wie in den Antworten von TcpListener: how to stop listening while awaiting AcceptTcpClientAsync()?

Dann benötigst du eigentlich auch keinen Backgroundworker mehr (außer du benutzt dessen ReportProgress-Methode).