2016-07-16 7 views

Antwort

1

Dies ist ein Leseereignis auf ServerSocket. Manuelle Seite für select(2):

Um über eingehende Verbindungen auf einem Socket benachrichtigt zu werden, können Sie wählen (2) oder pollen (2). Ein lesbares Ereignis wird sein, wenn eine neue Verbindung versucht wird, und Sie können dann accept() aufrufen, um einen Socket für diese Verbindung zu erhalten.

+0

Wie sagt der 'Selector' zwei lesbare Ereignisse auseinander? – JasonHuang

+0

Sie können den einzelnen Socket nicht gleichzeitig im Server- und Client-Modus verwenden. Nach dem Aufruf von 'listen()' an einem Socket wird dieser zum Server-Socket und darf nur zum Akzeptieren von Remote-Clients verwendet werden. Wenn Sie dann 'connect()' auf dem gleichen Socket aufrufen, wird EISCONN ("bereits verbunden") Fehler zurückgegeben. – gudok

+0

Nicht wird es nicht. Es ist noch nicht verbunden. Es wird wahrscheinlich EINVAL zurückgeben. – EJP

Verwandte Themen