Available in

(1) (2) (3) (8) (1)/cs (1)/de (2)/de (2)/es (8)/es (1)/fr (2)/fr (8)/fr (1)/hu (8)/hu (2)/it (1)/ja (2)/ja (8)/ja (2)/ko (8)/ko (2)/nl (1)/pl (2)/pl (2)/pt (8)/pt (2)/ru (8)/ru (1)/tr (1)/zh_cn (8)/zh_cn (1)/zh_tw (8)/zh_tw

Contents

ИМЯ

sync − записывает буферный кэш на диск

ОБЗОР

#include <unistd.h>

void sync(void);

ОПИСАНИЕ

sync сперва записывает индексные дескрипторы (inode) в буферы и затем буферы на диск.

ОШИБКИ

Данная функция всегда выполняется без ошибок.

СООТВЕТСТВИЕ СТАНДАРТАМ

SVr4, SVID, X/OPEN, BSD 4.3

БАГИ

В соответствии со стандартной спецификацией (например SVID), функция sync() выполняет запись, но возврат из неё может произойти перед тем как запись будет фактически завершена. Однако, начиная с версии 1.3.30, Linux выполняет ожидание окончания записи. (Это впрочем не гарантирует целостность данных: современные диски имеют свои собственные большие кэши).

ЗАМЕЧАНИЯ

Начиная с glibc 2.2.2 прототип функции в Linux такой как показано выше. В libc4, libc5, и glibc до версии 2.2.1, он выглядит как "int sync(void)" и sync всегда возвращает 0.

СМОТРИ ТАКЖЕ

bdflush(2), fsync(2), fdatasync(2), update(8), sync(8)

ПЕРЕВОД

Перевёл с английского Виктор Вислобоков <corochoone [AT] perm.ru> 2004

ПЕРЕВОД

Перевёл с английского Виктор Вислобоков <corochoone [AT] perm.ru> 2004

COMMENTS

blog comments powered by Disqus