Кажется, что нет способа запросить буфер, находится ли он в состоянии чтения или записи.
Получение состояния было бы полезно в модульных тестах, по крайней мере.
Каков наилучший способ получить государство?
В Buffer
нет "состояния чтения" или "состояния записи". Если буфер поддерживает его, его можно читать и записывать одновременно.
Метод flip()
просто: "Предел установлен на текущую позицию, а затем позиция установлена на ноль. Если метка определена, она отбрасывается".
Здесь нет внутреннего флип-состояния. Если у вас есть подготовленный буфер, содержащий тысячу байт, вы можете прочитать байт, а затем написать байт, который перезапишет второй...
flip()
?
Каков наилучший способ получить государство?
Нет. Самый простой способ управлять Buffers
- держать их всегда готовыми к чтению (= поместить) и flip()
их, когда вы хотите написать (= get), помните, чтобы потом compact()
или clear()
чтобы они возвращались обратно состояние чтения.