Тхе кључна разлика између диспосе () и финализе () је то одлагач () мора изричито позвати програмера док финализацију () позива сакупљач смећа пре уништења објекта.
Диспосе () је метода за затварање или ослобађање неуправљаних ресурса, као што су датотеке, потоци у објекту. Финализација је метода за извођење операција чишћења на неуправљаним ресурсима које држи тренутни објект прије него што се објект уништи.
1. Преглед и кључне разлике
2. Шта је збрињавање ()
3. Шта се финализира ()
4. Сличности између располагања () и финализације ()
5. Упоредна упоредба - одложите () према финалу () у табеларном облику
6. Резиме
Једна од најважнијих предности .НЕТ оквира је та што омогућава аутоматско одвоз смећа. Аутоматски ослобађа меморију објеката који се не користе. У програмским језицима као што су Ц и Ц ++, програмер мора самостално да управља меморијом. Али на језицима као што је Ц # који је изграђен на .НЕТ оквиру обезбеђује сакупљач смећа. Помаже у управљању меморијом. Не може се користити за ослобађање неуправљаних меморијских ресурса. За постизање овог задатка може се користити метода диспосе ().
Метода диспосе () може се користити за ослобађање ресурса као што су везе базе података, руковање датотекама итд. Ова метода се не позива аутоматски. Због тога програмер треба да примјени ову методу. Чим се активира ова метода, ослобађа се меморија за одређени неуправљани ресурс. Ова метода је декларисана у интерфејсу ИДиспосеабле.
Сакупљач смећа назива методу финализације само када се референца на неки предмет не користи даље. Ова метода се назива непосредно пре уништења објекта. Ова метода се имплементира уз помоћ деструктора. Метода финализације дефинирана је у класи јава.ланг.објецт. Ова метода је проглашена заштићеном. Није јавно проглашен да би се избегао приступ осталим класама. Све у свему, метода финализације може минимизирати перформансе програма јер не ослобађа меморију одмах.
диспосе () вс финализе () | |
Диспосе () је метода за затварање или ослобађање неуправљаних ресурса, као што су датотеке, потоци у објекту. | Завршна фаза је метода за извођење операција чишћења неуправљаних ресурса које поседује тренутни објект пре него што се објект уништи. |
објективан | |
Метода збрињавања користи се за ослобађање неуправљаних ресурса када се активирају. | Метода финализације користи се за ослобађање неуправљаних ресурса пре него што се објект уништи. |
Дефинисан интерфејс или класа | |
Диспосе () је дефинисан у интерфејсу ИДиспосабле интерфејс. | Завршетак () је дефинисан у класи јава.ланг.објецт. |
Начин позивања | |
Програмер се позива на методу збрињавања. | Метода довршетка позива се сакупљачем смећа. |
Аццесс Специфиер | |
Метода збрињавања је јавна. | Метода финализације је заштићена. |
Брзина | |
Начин одлагања одмах се позива. | Метода финализације се полако позива. |
Перформансе | |
Одлагање неће умањити перформансе програма. | Метода финализације може умањити перформансе програма. |
Овај чланак говори о разлици између начина одлагања и финализације у Ц #. Разлика између одлагања () и финализације () је та што програмер мора експлицитно позвати, а одлагање () позвати сакупљач смећа пре уништења објекта.
1.Имплемент Финализирајте и опустите се за чишћење неисправних ресурса. Доступно овде
2.Схарма, Нитиа. „Назад ка основама - одложите ВС финализацију.“ Ц # угао. Доступно овде
1.'Цсхарп Лого'Би Андрес15алварез - Властити рад, (ЦЦ БИ-СА 4.0) преко Цоммонс Викимедиа