Вопросы по теме 'finalizer'

Два вопроса о Dispose () и деструкторах в C #
У меня вопрос, как использовать Dispose() и деструкторы. Прочитав некоторые статьи и документацию MSDN, это кажется рекомендуемым способом. реализации Dispose() и деструкторов. Но у меня есть два вопроса об этой реализации, которые вы...
3561 просмотров
schedule 15.11.2021

Странная ошибка завершения SQL CE в приложении WP7
Frame Image Function Offset 0 coredll.dll xxx_RaiseException 19 1 mscoree3_7.dll...
169 просмотров

Финализаторы для объектов JavaScript
Предположим, у меня есть код asm.js, вероятно, созданный emscripten. Предположим, у него есть какая-то довольно большая структура, выделенная в куче, которая возвращается функцией asm.js в виде указателя, который выбирается какой-то библиотекой...
5497 просмотров

Как использовать PhantomReference в качестве замены finalize ()
В документации Javadoc 8 для PhantomReference говорится: Фантомные ссылки чаще всего используются для планирования действий предварительной очистки более гибким способом, чем это возможно с помощью механизма завершения Java. Итак, я...
1677 просмотров

Шаблон dispose в C #: зачем нам нужно условие if (dispose)?
Итак, реализация шаблона удаления по умолчанию выглядит так: class SomeClass : IDisposable { // Flag: Has Dispose already been called? bool disposed = false; // Public implementation of Dispose pattern callable by consumers. public...
885 просмотров

Накладные расходы на наличие Finalizer - с/без SuppressFinalize в Dispose
Предполагая следующее: Класс управлял только членами. Некоторые члены реализуют IDisposable . Класс sealed — класс не может быть производным от неуправляемых ресурсов и добавлять их. Объект используется внутри оператора using , т.е....
843 просмотров

В чем разница между ресурсами, размещенными в финализаторе, и ресурсами, выпущенными в dispose
Это следующий вопрос к этому вопросу: шаблон Finalize / Dispose в C # Итак, я понимаю, что если я создаю класс, использующий неуправляемые ресурсы, я должен их удалить. Ответ на связанный вопрос говорит о том, что финализатор избавляется от...
271 просмотров
schedule 23.02.2022

Когда метод dispose не будет вызываться?
На днях я читал эту статью и был интересно, почему вместе с методом Dispose был Finalizer. Я прочитал здесь на SO, почему вы можете добавить Dispose в Финализатор. Мне любопытно, когда Finalizer будет вызываться поверх самого метода Dispose?...
5500 просмотров

Финализатор не вызывается
У меня есть класс на С#, где я хочу правильно закрыть некоторые коммуникационные порты, когда мой класс удаляется. Однако финализатор никогда не вызывается, когда я выхожу из программы. Это почему? Я делаю что-то неправильно? Я вызываю удаление...
6499 просмотров
schedule 23.03.2022

Случай для финализатора С#
Этот вопрос связан с этим сообщением и некоторыми ответами, особенно ответ от @EricLippert. Я хочу инкапсулировать чтение и запись базы данных Informix SE внутри класса C#. Я хочу, чтобы OdbcConnection , OdbcCommand и OdbcDataReader...
78 просмотров
schedule 18.03.2022

Каков объем потока финализатора - для домена приложения или для каждого процесса?
Судя по всему, что я прочитал, должен быть один поток GC для вызова всех финализаторов. Теперь вопрос в том, какова сфера действия этого «одного» потока - для каждого процесса или для каждого домена приложения, поскольку вся цель доменов состоит в...
1941 просмотров

Правильный способ реализации Finalize и Dispose (когда родительский класс реализует IDisposable)
Я реализовал Finalize и Dispose в своих классах, я реализовал IDisposable в своем родительском классе и переопределил перегрузку Dispose (bool) в моих дочерних классах. я не был уверен следует ли использовать дублирующую переменную isDisposed...
5517 просмотров
schedule 30.03.2022

Perl 6 автоматически вызывает какие-либо специальные методы при очистке объекта?
Я думал, что Rakudo получил поддержку финализатора несколько лет назад, но мне не удалось найти для него документацию (возможно, она находится в Классы и объекты ). Перечисление всех методов в классе было не тем, что я искал. class Butterfly {...
276 просмотров
schedule 13.04.2022

Финализаторы с Dispose() в C#
См. пример кода из MSDN: ( http://msdn.microsoft.com/en-us/library/b1yfkh5e%28v=VS.100%29.aspx ) // Design pattern for a base class. public class Base: IDisposable { private bool disposed = false; //Implement IDisposable. public void...
390 просмотров
schedule 28.04.2022

MySQL бросает NullReferenceException в Finalize Как вы с этим справляетесь?
Я использую MySQL с коннектором .Net в 64-битной Windows. По какой-то причине Mysql выдает исключение NullReferenceException в Finalize. Это проблема здесь , и кажется, что это связано с ошибкой описано здесь . Об этой ошибке сообщалось в версии...
270 просмотров
schedule 05.05.2022

GC.Collect() не собирает сразу?
В ходе обсуждения в чате я написал это консольное приложение. Код: using System; class Program { static void Main(string[] args) { CreateClass(); Console.Write("Collecting... "); GC.Collect();...
5684 просмотров

Ruby принудительно выполняет сборку мусора, не работая должным образом
В следующем коде: class ExampleClass def initialize ObjectSpace.define_finalizer(self, proc{puts 'dead'}) end end ex = ExampleClass.new ex = nil GC.start while true # the while loop is to prevent the program from terminate # if the...
1032 просмотров
schedule 28.07.2022

C # dispose не вызывается, когда объект покидает область видимости в C ++ / CLI
У меня есть объект C #, который можно использовать для ресурса, который выглядит так: public sealed class CLoadingScope { private bool isDisposed; public CLoadingScope() {} ~CLoadingScope() { // must be disposed...
1042 просмотров
schedule 31.08.2022

Хорошие примеры использования финализаторов в C #
Когда я прочитал несколько статей об управлении памятью в C #, меня сбили с толку методы Finalizer. С ними связано так много сложных правил. Например, никто не знает, когда будут вызваны финализаторы, они вызываются, даже если код в ctor выдает,...
1876 просмотров

Значение Метод finalize никогда не вызывается JVM более одного раза для любого заданного объекта. в случае воскрешения объекта?
Согласно Java-документу: Метод finalize никогда не вызывается виртуальной машиной Java более одного раза для любого заданного объекта. Может ли указанная выше политика помочь сделать объект бессмертным? Если я воскрешу объект один раз из...
106 просмотров
schedule 14.09.2022