Линт ПК может действительно сделать это. Один простой способ сделать это должно настроить, он для обнаружения просто неиспользованный включает файлы и игнорирует все другие проблемы. Это довольно просто - чтобы включить просто сообщение 766 ("Заголовочный файл, не используемый в модуле"), просто включать опции-w0 +e766 в командную строку.
тот же подход может также использоваться с похожими сообщениями такой как 964 ("Заголовочный файл, не непосредственно используемый в модуле") и 966 ("Косвенно включенный заголовочный файл, не используемый в модуле").
FWIW я записал об этом более подробно в сообщении в блоге на прошлой неделе в http://www.riverblade.co.uk/blog.php?archive=2008_09_01_archive.xml#3575027665614976318 .
Я ожидаю, что ваш код будет блокироваться при вызове accept, никогда не дойдя до вызова configureBlocking.
Я обычно выделяю отдельный поток для каждого соединения сокета и позволяю ему блокироваться до тех пор, пока соединение не будет установлено / принято. Это позволяет основному потоку продолжать разблокироваться, пока он ожидает клиентских соединений.
Две вещи:
ServerSocket
, если вы прослушиваете соединения? Базовая структура мультиклиентного сервера:
while (true) {
// accept connections
// spawn thread to deal with that connection
}
Если проблема заключается в блокировке вызова accept ()
, то это то, что accept ()
выполняет: блокирует ожидание соединения. Если это проблема, я предлагаю вам создать отдельный поток для приема подключений.
Если вы ищете неблокирующие сокеты, я предлагаю использовать Selectors и ServerSocketChannels с пакетом NIO. .
Если типичный блокирующий сокет не дает вам необходимой доступности (соединение каждые 100 мс кажется трудным). Вы должны посмотреть на неблокирующий сокет. Вот учебное пособие . Вы также можете посмотреть Apache MINA , чтобы упростить эту задачу.