Нет, StringBuilder
- это чисто управляемый ресурс. Вы должны просто избавиться от всех ссылок на него. Все остальное заботится сборщиком мусора:
StringBuilder sb = ...;
// ... do work
sb = null; // or simply let it go out of scope.
В .NET нет детерминированного delete
(например, C ++, где вы освобождаете память, выделенную для одного объекта.) Только GC может освободить память. Потеряв все ссылки на объект, вы позволите GC иметь возможность освобождать объект, если он этого хочет. Вы можете форсировать сборку мусора, вызывая метод System.GC.Collect
. Тем не менее, не рекомендуется манипулировать с GC, если вы действительно не знаете, что делаете. GC умный. Редко выгодно форсировать это.