Trennen Sie die BeginGetContext-Methode von HttpListener sauber

8

Ich verwende einen HttpListener und verwende BeginGetContext , um mein Kontextobjekt zu erhalten. Ich möchte meinen HttpListener sauber herunterfahren, aber wenn ich versuche, ein Schließen auf dem Listener Ich erhalte eine Ausnahme und mein Programm wird beendet.

%Vor%

Das Programm gibt eine Ausnahme für listener.Close() aus, aber der Fehler wird nie in Visual Studio angezeigt. Die einzige Notiz, die ich erhalte, ist die folgende im Debug-Ausgabebildschirm:

  

Eine erste Möglichkeitsausnahme vom Typ 'System.ObjectDisposedException' ist in System.dll aufgetreten   Das Programm '[2568] Sandbox Console.vshost.exe: Managed (v4.0.30319)' wurde mit dem Code 0 (0x0) beendet.

Ich konnte die echte Ausnahme von Windows Event Viewer

erhalten %Vor%

Was muss ich tun, damit ich meinen HttpListener sauber schließen kann?

    
Scott Chamberlain 12.11.2012, 21:11
quelle

2 Antworten

13

Der Kontext wird ein letztes Mal aufgerufen, wenn Sie Close aufrufen. Sie müssen die Ausnahme des Objekts dispose behandeln, die ausgelöst werden könnte

%Vor%     
Scott Chamberlain 12.11.2012, 22:05
quelle
0

Sie könnten diese Zeile hinzufügen

%Vor%     
PEtter 01.06.2016 12:42
quelle

Tags und Links