Изменения документа Dispose
Редактировал(а) Alexandr Fokin 2024/06/02 16:03
От версии 1.6
отредактировано Alexandr Fokin
на 2023/02/15 23:40
на 2023/02/15 23:40
Изменить комментарий:
К данной версии нет комментариев
К версии 1.5
отредактировано Alexandr Fokin
на 2023/02/15 23:27
на 2023/02/15 23:27
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -77,14 +77,3 @@ 77 77 base.Dispose(disposing); 78 78 } 79 79 }{{/code}} 80 -|(% style="width:465px" %)Пример использование механизма отчистки для воскрешения (resurrection) объекта. 81 -\\Можно доработать для использования Dispose (не подавляется финализация, не выполняется повторная регистрация). 82 -Если объект внутри себя использует другие финализируемые объекты, то внутри блока финализатор их состояние может быть недетерминировано.|(% style="width:1030px" %){{code language="C#"}}class A { 83 - private IObjectPool _pool = ...; 84 - 85 - ~A() { 86 - //will not die. keep a reference in resurectedA. 87 - _pool.ReturnToPool(this); 88 - GC.ReRegisterForFinalize(this); 89 - } 90 -}{{/code}}