Logo bg.boatexistence.com

Защо методът за финализиране трябва да се избягва?

Съдържание:

Защо методът за финализиране трябва да се избягва?
Защо методът за финализиране трябва да се избягва?

Видео: Защо методът за финализиране трябва да се избягва?

Видео: Защо методът за финализиране трябва да се избягва?
Видео: МЕТОДЪТ, КОЙТО ПРОМЕНИ ЗАВИНАГИ ЖИВОТА МИ! 2024, Може
Anonim

Дори в нашата програма не може да стартира метода finalize за всичките 3 нишки. „Този метод по своята същност е небезопасен Може да доведе до извикване на финализатори върху живи обекти, докато други нишки едновременно манипулират тези обекти, което води до неправилно поведение или безизходица.“.

Защо методът за финализиране трябва да се избягва C?

Методът Finalize на обекта не трябва да извиква метод за обекти, различни от този на неговия базов клас. Това е така, защото другите обекти, които се извикват, могат да бъдат събрани едновременно с извикващия обект, като например в случай на изключване по време на изпълнение на общ език.

Трябва ли да заменим метода за финализиране?

Методът finailze трябва да бъде отменен, за да може обект да включва кода за почистване или да изхвърли системните ресурси, което трябва да се направи, преди обектът да бъде събран за боклук.

Какво ще стане, ако изключение бъде изхвърлено от метода Finalize?

Ако неуловено изключение бъде изхвърлено от метода finalize, изключението се игнорира и финализирането на този обект се прекратява. … Всяко изключение, предизвикано от метода finalize, води до спиране на финализирането на този обект, но иначе се игнорира.

Каква е целта на метода за финализиране?

Методът finalize на клас Object е метод, който Колекционерът за боклук винаги извиква точно преди изтриването/унищожаването на обекта, който отговаря на условията за събиране на боклук, за да извърши дейност по почистване.

Препоръчано: