У меня есть программа, которая страдает от увеличения дескриптора файла. Я вижу, когда я выполняю команду ls -l/proc/5969/fd, где 5969 является pid программы java, количество файловых дескрипторов непрерывно увеличивается. , но я не могу открыть один из этих файлов decriptors, чтобы увидеть, что файл остается открытым: вот пример листинга:утечка дескриптора файла в программе java: слишком много открытых файлов
lrwx------ 1 root root 64 oct 24 16:08 52295 -> socket:[2577706264]
lrwx------ 1 root root 64 oct 24 16:08 52296 -> socket:[2579543392]
lrwx------ 1 root root 64 oct 24 16:08 52297 -> socket:[2578760962]
Пожалуйста, помогите мне найти способ, чтобы решить этот файл утечки дескриптора, зная, что файлы остаются открытыми и увеличивают номер дескриптора файла.
Это не * просто * номера портов, которые он связывает. В UNIX/Linux процессу разрешено открывать только определенное количество файловых дескрипторов fd, будь то файлы fd, socket fd, pipe fd или что угодно. –
Я не уверен, что использую сокет и что у меня заблокированы номера портов. – zacky
Знаете ли вы, как открыть открытые файлы, чтобы открыть, где я открываю? – zacky