Является ли запись RandomAccessFile асинхронной?
Синхронное / асинхронное различие относится к гарантии того, что данные / метаданные были благополучно сохранены на диске до возврата вызова write
.Без гарантии синхронного режима возможно, что записанные вами данные могут все еще находиться в памяти только в момент завершения системного вызова write
.(Данные будут записаны на диск в конце концов ... обычно в течение нескольких секунд ... если операционная система не выйдет из строя или машина не умрет из-за сбоя питания или чего-то подобного.)
Вывод в синхронном режиме - (очевидно) медленнее, чем вывод в асинхронном режиме.
Означает ли это, что режим 'rw' является асинхронным?
Да, именно так, как указано выше.
Нужно ли включать 's', если мне нужно знать, когда запись файла завершена?
Да, если под "завершить" вы имеете в виду "записано на диск".