2013-04-30 6 views
0

Для server.accept я написал обработчик завершения, который имеет параметры.Java Async I/O с NIO2: Does AsynchronousServerSocketChannel.accept дает вам активный AsynchronousSocketChannel

Когда обработчик вызывается с помощью метода accept, означает ли это, что AsynchronousSocketChannel теперь подключен?

Или мне нужно вызвать метод AsynchronousSocketChannel.connect?

В настоящее время я думаю, что AsynchronousServerSocketChannel.accept принимает соединение (и сохраняет его в параметре AsynchronousSocketChannel) и что AsynchronousSocketChannel.connect также инициирует соединение с сервера на клиент (сохраняет в канале сокета) ,

Есть ли я на правильном пути?

ответ

0

Когда обработчик вызывается с помощью метода accept, означает ли это, что AsynchronousSocketChannel теперь подключен?

Да.

Или мне нужно вызвать метод AsynchronousSocketChannel.connect?

No.

Прямо сейчас, что я думаю, что происходит в том, что AsynchronousServerSocketChannel.accept принимает соединение (и сохраняет его в параметре AsynchronousSocketChannel)

Да.

и что AsynchronousSocketChannel.connect также инициирует соединение с сервера на клиент (сохраняет в канале сокета).

Нет. Очевидно, вы еще не пробовали. Это потерпит неудачу.

accept() для серверов. connect() для клиентов.

+0

Спасибо, что я думал. Я работаю над своей первой реализацией и дизайном barebones. Похоже, что я буду работать, когда напишу тестовый клиент. – SmoothB1983