Ich habe da mal ne Frage... wozu benutzt man eigentlich das SelectionKey?
Siehe Code:
Ich kenne das nur so:
Ich habe mal ein wenig gegoogled... aber eine Erklärung nicht gefunden. Wo ist der Unterschied (Vor- und Nachteile) von dem Code oben und unten?
Siehe Code:
Code:
SelectionKey serverkey = serverSocketChannel.register(selector, SelectionKey.OP_ACCEPT);
while (isRunning) {
Log.i("","waiting for event");
selector.select();
Log.i("","got an event");
Set<SelectionKey> keys = selector.selectedKeys();
for (Iterator<SelectionKey> i = keys.iterator(); i.hasNext();) {
SelectionKey key = i.next();
i.remove();
if (key == serverkey) {
if (key.isAcceptable()) {
SocketChannel client = serverSocketChannel.accept();
Log.i("","NEW CONNECTION from " + client.socket().getRemoteSocketAddress());
Ich kenne das nur so:
Code:
// Server auf einem Port starten
try
{
acceptSocket=new ServerSocket(port);
System.out.println("Server :"+acceptSocket.getInetAddress()+" gestartet auf Port: "+acceptSocket.getLocalPort());
}
catch (Exception e)
{
System.out.println("Connection Error:"+e.toString());
}
Ich habe mal ein wenig gegoogled... aber eine Erklärung nicht gefunden. Wo ist der Unterschied (Vor- und Nachteile) von dem Code oben und unten?
Zuletzt bearbeitet: