Gibt es eine Möglichkeit, einen Selektor auf einem Socket-Kanal zu entfernen

8

Das ist eine ziemlich direkte Frage, aber ich habe herausgefunden, dass ich einen Selektor abmelden muss, der meinen Socket-Kanal für Java überblickt.

%Vor%

Wo kann ich später im Programm etwas wie

nennen %Vor%

Und dass der Selektor keine Datenschlüssel für diesen Socket-Kanal mehr abfängt. Dies würde mir das Leben viel leichter machen, wenn ich mein Server / Client-Design betrachte.

    
Dr.Knowitall 13.12.2012, 19:38
quelle

2 Antworten

17

Rufen Sie cancel() auf dem Auswahlschlüssel auf:

%Vor%

oder

%Vor%     
Nikolai Fetissov 13.12.2012, 20:04
quelle
1

Zusätzlich zu @Nikolais Antwort. Doing client.close() wird auch den Kanal abmelden.

  

Ein Schlüssel wird zum abgebrochenen Schlüsselsatz des Selektors hinzugefügt, wenn er abgebrochen wird, entweder durch Schließen seines Kanals oder durch Aufrufen seiner Abbruchmethode.

Von Ссылка

    
gokul_uf 04.10.2016 22:17
quelle