From 80defeaa4b493f6d954d0895fdf8fc89409ac875 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Mon, 28 Nov 2022 16:57:47 +0300 Subject: [PATCH] =?utf8?q?=D0=9F=D1=80=D0=BE=D0=B1=D0=BB=D0=B5=D0=BC=D0=B0?= =?utf8?q?=20=D1=81=20=D1=82=D1=80=D0=B5=D0=B4=D0=B0=D0=BC=D0=B8=20=D1=83?= =?utf8?q?=20btrtrc?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit github.com/anacrolix/torrent порождает такую кучу тредов (2643c085a0970d8d8bc3471cb5c294ba8b09fee8), что ОС это совершенно не нравится. На самом деле, это просто настолько активная конкурентная работа с файлами, что сам Go порождает эти треды для блокирующих операций. Решил её линейно выполняя I/O операции для каждого файла. Просто захват mutex-а каждый раз. Больше кол-во тредов не растёт. Плюс добавил сохранение этих файловых дескрипторов открытых на 10сек -- существенно уменьшает кол-во системных вызовов open/close. -- 2.50.0