[О блоге] [наверх] [пред] [2022-11-28 16:57:47+03:00] [80defeaa4b493f6d954d0895fdf8fc89409ac875]
Темы: [bittorrent]

Проблема с тредами у btrtrc

github.com/anacrolix/torrent порождает такую кучу тредов
(2643c085a0970d8d8bc3471cb5c294ba8b09fee8), что ОС это совершенно не
нравится. На самом деле, это просто настолько активная конкурентная
работа с файлами, что сам Go порождает эти треды для блокирующих операций.

Решил её линейно выполняя I/O операции для каждого файла. Просто захват
mutex-а каждый раз. Больше кол-во тредов не растёт. Плюс добавил
сохранение этих файловых дескрипторов открытых на 10сек -- существенно
уменьшает кол-во системных вызовов open/close.

    [оставить комментарий]