Size: a a a

2021 February 11

E

EgorBo in pro.net
в том что и диспоз и финализатор выполняются?
источник

IC

Ilya Chernoudov in pro.net
EgorBo
в том что и диспоз и финализатор выполняются?
конкурентно
источник

E

EgorBo in pro.net
так для этого придумали  GC.SuppressFinalize(this)
источник

IC

Ilya Chernoudov in pro.net
EgorBo
так для этого придумали  GC.SuppressFinalize(this)
но это всё ещё валидное поведение?
источник

IC

Ilya Chernoudov in pro.net
с конкурентным вызовом?
источник

E

EgorBo in pro.net
почему нет?
источник

E

EgorBo in pro.net
Dispose - обычный метод
источник

IC

Ilya Chernoudov in pro.net
EgorBo
почему нет?
вызов финализатора у ещё живого объекта
источник

E

EgorBo in pro.net
в теории this может умереть раньше чем метод закончится)
источник

IC

Ilya Chernoudov in pro.net
EgorBo
в теории this может умереть раньше чем метод закончится)
тогда ок)
источник

E

EgorBo in pro.net
представль что диспоз заинлайнился куда-то
источник

E

EgorBo in pro.net
и в его логике this практически сразу уходит из скопа
источник

IC

Ilya Chernoudov in pro.net
EgorBo
представль что диспоз заинлайнился куда-то
попасть на гонку при инлайне - надо быть супер неудачником
источник

E

EgorBo in pro.net
мы тут теоретики же
источник

IC

Ilya Chernoudov in pro.net
EgorBo
мы тут теоретики же
ну да)
источник

E

EgorBo in pro.net
короче пишиш GC.KeepAlive(this) в конце своего диспоза и все -_- а лучше пиши SupressFinalizer
источник

SB

S B in pro.net
падаждите, граждане. а СупрессФайналайз() же тоже рейскондишену подвержен, или я сейчас вообще не о том? я не так хорошо дотнет знаю, но насколько я понимаю я должен его вызвать после того, как логику диспоуза сделал?
источник

E

EgorBo in pro.net
ибо вызов диспоза должен по сути делать тоже что и финалайзер
источник

E

EgorBo in pro.net
S B
падаждите, граждане. а СупрессФайналайз() же тоже рейскондишену подвержен, или я сейчас вообще не о том? я не так хорошо дотнет знаю, но насколько я понимаю я должен его вызвать после того, как логику диспоуза сделал?
ты в него this аргументом передаешь
источник

E

EgorBo in pro.net
= зыс живет до конца
источник