Сборщик удаляет только сами кортежи, но не трогает массивы ни разу за время жизни приложения.
Да - увеличивает расход памяти, а чего ты ожидал?
Все внешние ссылки на массивы уничтожаются. Следовательно, ожидается освобождение памяти.
сборщик мусора не успевает их утилизировать
А это можно как-нибудь исправить?
это нормально
Если платформа позиционируется как с умной сборкой мусора, это ненормально. Раз сборщик умный, он должен был бы отловить циклические ссылки. Хотя, это же ValueTuple. Я с ними ещё не работал.
оптимизировать алгоритм
Вместо кортежа использовать классы/ref/out. Но хотелось бы использовать современные возможности языка.
Артём, нативно? Нативно, это просто фреймворк. У него есть плагин src, который подгружает fs внутри себя, а возвращает либо буфер с содержимым файла, либо поток, указывающий на файл. Если вам так проще, почитайте api, напишите а-ля свой плагин.
Скорость интернета должна стыковаться на всех этапах передачи трафика. Надо сначала понять, где именно теряются пакеты - на сетевой карте, устройстве или у провайдера.
Но всё-таки хотелось бы писать скобки вместо лишнего класса.