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.
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).