Wie zu schließen (kill-release?) eine Steckdose, die ist im FIN_WAIT_2 Zustand?

Ich habe eine client-Anwendung, die verwendet eine nicht verwaltete dll für die Kommunikation mit einem server.

Alle Netzwerk-bezogene Operationen sind perormed innerhalb der nicht verwalteten dll.
Nach einer Reihe von Operationen mit dem server, der client is running out von TCP-ports.
Wenn wir überprüfen den Zustand der netwotk mit 'netstat -an', wir erhalten das folgende Ergebnis:

...
TCP    192.168.11.55:56048    192.168.10.28:5000     FIN_WAIT_2
TCP    192.168.11.55:56049    192.168.10.28:5000     FIN_WAIT_2
TCP    192.168.11.55:56050    192.168.10.28:5000     FIN_WAIT_2
TCP    192.168.11.55:56051    192.168.10.27:5000     FIN_WAIT_2
TCP    192.168.11.55:56052    192.168.10.28:5000     FIN_WAIT_2
TCP    192.168.11.55:56053    192.168.10.27:5000     FIN_WAIT_2
TCP    192.168.11.55:56054    192.168.10.27:5000     FIN_WAIT_2
TCP    192.168.11.55:56055    192.168.10.27:5000     FIN_WAIT_2
TCP    192.168.11.55:56056    192.168.10.27:5000     FIN_WAIT_2
TCP    192.168.11.55:56057    192.168.10.28:5000     FIN_WAIT_2
TCP    192.168.11.55:56058    192.168.10.27:5000     FIN_WAIT_2
TCP    192.168.11.55:56059    192.168.10.28:5000     FIN_WAIT_2
TCP    192.168.11.55:56060    192.168.10.27:5000     FIN_WAIT_2
...

Werden die ports erst freigegeben, wenn der client geschlossen ist.

Wenn ich das VS-Projekt im Debug-Modus, es läuft nie aus den Häfen.
Aber, beim laufen im Release-Modus, es ist passiert.

Und ich habe keinen Zugriff, weder auf server-noch client-Quelle.

Wie die Freigabe oder töten Sie die ports, die im FIN_WAIT_2 Zustand?

InformationsquelleAutor ulughbekula | 2012-05-20
Schreibe einen Kommentar