Junior — Middle
How can file descriptors be closed so that the operating system releases them?
sobes.tech AI
Answer from AI
File descriptors are integer identifiers for open files or resources in the operating system. To release them and allow the OS to close the corresponding resources, the system call close must be invoked with the descriptor number.
Example in C:
#include <unistd.h>
int fd = open("file.txt", O_RDONLY);
// ... work with the file
close(fd); // Close the file descriptor
If the descriptor is not closed, it remains open, which can lead to resource leaks and exhaustion of the open files limit.
In some languages and environments (e.g., Python), closing file descriptors is done automatically when the file object is closed or when exiting a with block.