При профилировании моего приложения (C #, .NET 4) я заметил, что сторонняя библиотека, которую я использую, явно вызывает GC.Collect ( ). Это очень раздражает, потому что иногда это сильно влияет на производительность моего приложения, поскольку некоторые вызовы этой библиотеки заканчиваются огромными циклами: время, проведенное в GC.Collect, составляет более 80% от общего времени выполнения.
курс, Я сообщил об этом поведении сопровождающим библиотеки (библиотека не является открытым исходным кодом), но пока они работают над новой версией, я хотел бы оптимизировать свое приложение. Что я могу сделать?
Я попытался настроить сборщик мусора, установив для GCSettings.LatencyMode значение GCLatencyMode.LowLatency (конечно, только во время выполнения вызовов библиотеки), но безуспешно. Я бы предпочел избежать разветвления своего процесса.
Есть идеи?