Вопросы по теме 'nio'

Почему записи SocketChannel всегда завершаются на полную сумму даже на неблокирующих сокетах?
Используя Sun Java VM 1.5 или 1.6 в Windows, я подключаю неблокирующий сокет. Затем я заполняю ByteBuffer сообщением для вывода и пытаюсь write() передать SocketChannel. Я ожидаю, что запись будет завершена только частично, если объем записи...
3021 просмотров
schedule 30.08.2022

Как определить, будет ли файл перемещен логически или физически
Факты: Когда файл перемещается, есть две возможности: Исходный и целевой файлы находятся в одном разделе, и обновляется только индекс файловой системы. Источник и место назначения находятся в двух разных файловых системах, и файл...
929 просмотров
schedule 29.03.2023

как читать и записывать данные и принимать соединение с использованием канала сокета
Я создал простое серверное клиентское приложение, используя java NIO. Я использовал там один селектор для приема соединения, чтения данных и записи. Но я хочу приложение, в котором 1 селектор будет занят приемом соединения, в то время как 2-й...
9770 просмотров
schedule 16.12.2022

SSLEngine и закрыть
Я реализовал вспомогательный модуль, который позволяет мне получать чистые данные из канала, используемого с SSL, и записывать в него зашифрованные данные: это соответствующий интерфейс (у меня также есть некоторые неабстрактные методы в этом классе,...
1963 просмотров
schedule 03.07.2022

Поток Java блокируется при регистрации канала с помощью селектора при вызове select (). Что делать?
У меня основной вопрос. Почему и как метод регистрации SelectableChannel может блокировать вызов. Позвольте представить сценарий. Я создал объект Selector в классе Register следующим образом. private static Selector selector =...
8657 просмотров
schedule 11.09.2023

java.net.ConnectException: соединение отклонено при вызове SocketChannel.open
Я пытаюсь написать простую программу для открытия канала сокета на локальный адрес. Я получаю исключение отказа в подключении всякий раз, когда я запускаю эту программу import java.net.InetAddress; import java.net.InetSocketAddress; import...
18741 просмотров
schedule 15.04.2022

Сбор нескольких файлов с использованием выбираемых файловых каналов
Я реализовал входной поток многофайлового сборщика, который умеет считывать и объединять данные из ранее разбросанных файловых сегментов. Однако текущая версия использует RandomAccessFile вместе с ExecutorService фиксированного размера и с большими...
323 просмотров
schedule 19.07.2022

Рекурсивный список файлов в Java
Как мне рекурсивно перечислить все файлы в каталоге в Java? Предоставляет ли фреймворк какую-либо полезность? Я видел много хакерских реализаций. Но ни один из фреймворков или nio
330299 просмотров
schedule 25.03.2024

Почему SelectionKey, зарегистрированный в DatagramChannel, возвращает SelectableChannel в Scala, но не в Java?
Я преобразовываю некоторый код Java NIO для запуска в Scala, и я получаю сообщение об ошибке, потому что SelectionKey, который я вызываю, возвращает SelectableChannel, а не DatagramChannel, который является подклассом SelectableChannel и экземпляром...
1310 просмотров
schedule 03.03.2024

Политики регистрации для чтения и записи при работе с сокетами NIO
При работе с сокетами NIO в Java после подключения я могу либо зарегистрироваться для операций чтения и записи и просто ничего не делать всякий раз, когда я получаю уведомление о записи и у меня ничего нет в исходящем буфере, либо я могу...
160 просмотров
schedule 09.03.2024

Java: преимущества GatheringByteChannel?
Мне интересно, когда GatheringByteChannel (принимающие массив байтовых буферов) имеют преимущества перед «обычными» методами записи WritableByteChannel. Я попробовал тест, в котором я мог использовать обычный метод записи по сравнению со сбором в...
1031 просмотров
schedule 06.03.2024

Java Selector select () всегда возвращает последний прочитанный ключ
Я пытаюсь написать TCP-сервер, который читает данные, отправленные клиентом. Я хочу, чтобы клиентское соединение оставалось открытым после чтения, чтобы иметь возможность читать любые последующие отправленные данные. Код, который я выполняю,...
1026 просмотров
schedule 05.04.2022

Проверка данных, полученных на неблокирующем сервере
Я создаю неблокирующий сервер с использованием пакета javas NIO, и у меня есть пара вопросов о проверке полученных данных. Я заметил, что когда я вызываю чтение на канале сокета, он пытается заполнить байтовый буфер, в который он читается (согласно...
112 просмотров
schedule 21.04.2022

Java NIO - Как эффективно анализировать файл, содержащий как ascii, так и двоичные данные?
У меня есть некоторые файлы данных, которые выглядят примерно так: text header "lots of binary data hear" /header more text header "more binary data" /header .... Размер большинства файлов составляет около 1-5 МБ. Очень маловероятно, что мне...
865 просмотров
schedule 28.07.2023

Java, IO - самый быстрый способ удалить файл
Моя проблема в том, что у меня есть приложение, которое записывает много относительно (100-500 КБ) небольших файлов CSV (десятки и сотни тысяч). Затем содержимое этих файлов загружается в базу данных с помощью вызова загрузчика sql (его oracle db), и...
17302 просмотров
schedule 15.06.2022

Ввод-вывод Java против нового ввода-вывода Java (NIO) с Linux NPTL
Мои веб-серверы используют обычный ввод-вывод Java с механизмом потока на соединение. В настоящее время они становятся на колени при увеличении числа пользователей (длинное соединение для опроса). Однако в основном соединения простаивают. Хотя эту...
5452 просмотров
schedule 01.11.2022

Нужно ли нам использовать MappedByteBuffer.force() для сброса данных на диск?
Я использую MappedByteBuffer для ускорения операций чтения/записи файлов(). Мои вопросы, как показано ниже: Я не уверен, нужно ли мне использовать метод .force() для сброса содержимого на диск или нет. Кажется, что без .force() .getInt() все...
4343 просмотров
schedule 22.05.2023

Настраиваемые блокирующие и неблокирующие запросы в NIO
Я планирую использовать java NIO для своего проекта, но одним из моих требований является сохранение настраиваемости запросов, т.е. клиент может выбрать запрос: 1. блокирующий, 2. неблокирующий. Итак, можно ли использовать NIO в синхронизации....
4408 просмотров
schedule 31.07.2022

Как работать с очень большим текстовым файлом?
В настоящее время я пишу что-то, что должно обрабатывать очень большие текстовые файлы (по крайней мере, несколько ГиБ). Здесь нужно (и это исправлено): На основе CSV в соответствии с RFC 4180, за исключением встроенных разрывов строк....
2513 просмотров
schedule 08.10.2022

apr_socket_recv: Установленное соединение было прервано программным обеспечением на вашем хост-компьютере.
Я создаю небольшой сервер, используя java.nio , но при попытке провести его стресс-тест я продолжаю получать сообщения о сбросе соединения на стороне сервера, а точнее: apr_socket_recv: An established connection was aborted by the software in...
2555 просмотров
schedule 22.03.2023