Описание тега finalization
Завершение предназначено для вопросов, касающихся программного освобождения памяти в сочетании со сборкой мусора, внешними ресурсами и слабыми ссылками.
8
ответов
Финализатор запущен, пока его объект еще использовался
Резюме: C# /.NET должен быть сборщиком мусора. В C# есть деструктор, используемый для очистки ресурсов. Что произойдет, когда объект A будет собран мусором в той же строке, что и я, пытаясь клонировать один из его переменных-членов? Видимо, на мульт…
25 сен '08 в 17:18
0
ответов
Ошибка компиляции GNU Fortran - финализация
Я пытаюсь скомпилировать большой код с использованием компилятора GNU. Однако, когда я пытаюсь скомпилировать прикрепленный кусок кода с помощью GNU Fortran (GCC) 6.1.0, некоторые подпрограммы используют тип fn_grid_nodes_t киньте это сообщение об о…
30 ноя '16 в 23:22
2
ответа
Могу ли я гарантировать выполнение пользовательского кода завершения ПОСЛЕ уничтожения формы?
У меня есть многопоточное приложение со многими формами, но мне нужно создать экземпляры некоторых классов и вызвать некоторые вещи для инициализации перед созданием форм. Конечно, я должен выполнить соответствующий код завершения. Вот упрощенный пр…
10 сен '13 в 14:53
1
ответ
Как правильно освободить интерфейс за OleVariant?
Я пытаюсь найти безопасный / детерминированный способ выпуска интерфейса, который инкапсулирован в OleVariant. AFAICS Delphi освобождает ссылки на интерфейсы в конце процедуры, но в моем случае я должен сделать это раньше, потому что я должен выключ…
19 июл '11 в 10:33
1
ответ
Идентификатор потока финализатора
Мы наблюдаем утечку памяти в одном из наших приложений WCF, и мне было интересно, может кто-нибудь что-то прояснить для меня. Используя windbg, я запустил! Finalizequeue, и он показывает тысячи объектов в каждой куче, установленной как "Готово к фин…
23 фев '17 в 15:03
1
ответ
Что на самом деле означает "деструкторы не наследуются"?
Раздел 10.13, Деструкторы спецификации языка C# 3.0 гласит следующее: Деструкторы не наследуются. Таким образом, класс не имеет деструкторов, кроме того, который может быть объявлен в этом классе. Раздел "Деструкторы" Руководства по программированию…
08 дек '09 в 22:52
3
ответа
Нужно ли завершать массив записей в Delphi?
В моем заявлении у меня есть следующая запись: TTransaction = record Alias: string Description: string Creation: TDateTime Count: Integer end; и я использую эту запись в этом массиве: Transactions = array of TTransaction; Я сохраняю массив загруженн…
19 фев '13 в 13:12
1
ответ
C++: порядок завершения объекта производного класса
Я знаю, что порядок завершения объекта класса следующий: Выполнить тело деструктора Уничтожить объект (т.е. освободить память, используемую для элементов данных) Теперь меня спросили о порядке завершения для объектов производного класса. Я предполаг…
05 янв '15 в 11:21
1
ответ
PhantomReference с нулевой очередью
Java позволяет писать: new PhantomReference(new Object(), null) В этом случае new Object() будет собираться? Как я понимаю, фантомная ссылка является альтернативой finalize() использование метода. И после появления ссылки в очереди, мне нужно сделат…
30 дек '16 в 12:10
0
ответов
Функция завершения Fortran не работает, когда тип является массивом
Недавно я обнаружил серьезную проблему в том, что в некоторых случаях функция финализации не работает. Описание: Я определил тип, скажем TYPE(testtype):: T, в котором используется много указателей и размещаемых массивов. И есть подпрограмма завершен…
12 июн '17 в 04:32
1
ответ
Дескриптор завершения остается в памяти. как убрать эту ссылку?
Мне нужно оптимизировать мое приложение в использовании памяти. поэтому я использовал профилировщик производительности.net... но некоторые ссылки в моем приложении все еще живы и никогда не собираются GC, даже если я заставляю его собирать. Ссылка, …
27 ноя '16 в 11:46
2
ответа
Буду ли я избегать использования Reflection во время финализации с PantomReferences?
Допустим, я создал класс MyClass, который реализует Closable. Так что в методе close() я собираюсь освободить несколько очень важных ресурсов. Ну, так как это очень важные источники, я создал какую-то сеть безопасности (как рекомендуется в Effective…
07 апр '14 в 20:15
2
ответа
Как завершить lisp:struct, содержащую указатель?
Я портирую Lightweight Communications и Marshalling с julia на lisp, так как он имеет лучший API. Я использовал Swig для генерации вызовов функции C. Я хочу знать, является ли это безопасным использованием указателя C или нет. вот функция создания: …
05 авг '18 в 15:56
1
ответ
Создание контролируемого типа вызовет финализацию по возвращении
Я хочу создать функцию для создания и инициализации управляемого типа (немного похоже на фабрику) следующим образом: function Create return Controlled_Type is Foo : Controlled_Type; begin Put_Line ("Check 1") return Foo; end Create; procedure Main i…
19 окт '17 в 14:23
15
ответов
Следует ли использовать "Dispose" только для типов, содержащих неуправляемые ресурсы?
У меня недавно была беседа с коллегой о ценности Dispose и типы, которые реализуют IDisposable, Я думаю, что есть смысл в реализации IDisposable для типов, которые должны быть очищены как можно скорее, даже если нет неуправляемых ресурсов для очистк…
25 апр '12 в 13:12
0
ответов
PyQt5 и инициализация / финализация интерпретатора Python
У меня есть приложение, которое можно расширить с помощью макросов Python. Поскольку python используется не часто, для каждого макроса я инициализирую интерпретатор python, запускаю макрос и затем завершаю работу интерпретатора. Все работает отлично…
12 май '15 в 16:11
0
ответов
Что делает "завершение объектов в очереди завершения"?
Когда я открываю консоль Java в Java SE 7 Update 76, мне показывают список сочетаний клавиш, которые я могу использовать для отладки. Ярлык для F помечен finalize objects on finalization queue, Когда я запускаю этот ярлык, он выводит на консоль след…
13 окт '17 в 19:44
1
ответ
Очередь завершения Java и утечки памяти
Как получить список всех объектов, ожидающих завершения?, чтобы я мог завершить его вручную. В настоящее время я не получил прямой метод для получения всех объектов, ожидающих завершения.
04 апр '14 в 10:30
5
ответов
Какова цель завершения в Java?
Мое понимание завершения таково: Чтобы очистить или восстановить память, которую занимает объект, сборщик мусора вступает в действие. (автоматически вызывается?) Затем сборщик мусора разыменовывает объект. Иногда сборщик мусора не может получить дос…
15 мар '10 в 21:19
2
ответа
Как составить список всех объектов в списке финализации GC?
У меня сбой в моей программе, это визуализатор для VS, поэтому отладку очень сложно, я пытался создать дамп и использовать WinDbg для его изучения, но это не удалось. Итак, теперь я пытаюсь программно заняться этим списком, но не знаю как. Благодарю.
20 май '15 в 10:28