close (wywołanie systemowe) - close (system call)
Blisko wywołanie systemowe jest wywołanie systemowe wykorzystywane do zamykania deskryptor przez jądro . Dla większości systemów plików , o Program kończy dostęp do pliku w systemie plików, stosując ścisłą wywołanie systemowe. To opróżnia bufor plików, aktualizacje plików metadanych , które mogą zawierać i EOF wskaźnik w danych; de-przydziela zasoby skojarzone z plikiem (w tym deskryptor pliku ) i aktualizuje system szeroki spis plików w użyciu. Niektóre języki programowania utrzymać strukturę danych plików otwartych przez ich biblioteki wykonawczym i może zamknąć, gdy program kończy. Praktyka ta jest znana jako nabycie zasobów jest inicjalizacji (RAII). Niektóre systemy operacyjne wywoła close
na plikach przechowywanych przez program, jeśli kończy. Niektóre systemy operacyjne wywoła close
syscall w ramach odzyskiwania systemu operacyjnego w wyniku awarii systemu.
C definicja POSIX biblioteki
Blisko połączenia jest standaryzowany przez POSIX specyfikacji
int close (int filedes);
int fclose (FILE *stream);
Funkcja zwraca zero, aby wskazać plik został pomyślnie zamknięte. Jeżeli wystąpi błąd, to jest wartość -1 jest zawracana i errno jest odpowiednio ustawiona.
Błędy, które mogą wystąpić, to:
EBADF
- Argument dostarczane nie był ważny deskryptor
EINTR
- Wywołanie funkcji zostało przerwane przez sygnał
EIO
- Błąd I / O wystąpiło
Referencje
Linki zewnętrzne
- C_Programming / C_Reference / stdio.h / fclose na Wikibooks