Проверка, были ли очищены буферы в R

У меня есть несколько больших файлов, с которыми я работаю, и я использую несколько различных функций ввода-вывода для доступа к ним. Самым распространенным из них является пакет bigmemory .

При записи в файлы я на собственном горьком опыте научился очищать выходные буферы, в противном случае все ставки на то, были ли данные сохранены. Однако,это может привести к очень долгому ожиданию, пока bigmemory делает свое дело (много минут). Я не знаю, почему это происходит - это не всегда происходит и его нелегко воспроизвести.

Есть ли способ определить, сброшены ли буферы ввода-вывода в R, особенно для bigmemory ? Если операционная система имеет значение, не стесняйтесь ограничивать ответ таким образом.

Если ответ можно обобщить за пределы bigmemory , это было бы здорово, поскольку я иногда полагаюсь на другие функции отображения памяти или Потоки ввода-вывода.

Если нет хороших решений для проверки, очищены ли буферы, существуют ли случаи, в которых можно предположить, что буферы были очищены? Т.е. помимо использования flush () .

Обновление : я должен уточнить, что это все бинарные соединения. @RichieCotton отметил, что isIncomplete () , хотя в справочной документации упоминаются только текстовые соединения. Неясно, можно ли это использовать для двоичных соединений.

6
задан Iterator 26 September 2011 в 18:13
поделиться