Qhov Tseem Ceeb Qhov txawv - pov tseg () vs finalize ()
Qhov sib txawv tseem ceeb ntawm pov tseg () thiab qhov kawg () yog qhov pov tseg () yuav tsum tau hais meej meej los ntawm tus programmer thaum qhov kawg () raug hu los ntawm tus neeg khaws khib nyiab ua ntej rhuav tshem cov khoom.
Qhov pov tseg () yog ib txoj hauv kev los kaw lossis tso cov peev txheej tsis tau tswj hwm xws li cov ntaub ntawv, cov kwj tuav los ntawm ib qho khoom. Qhov kawg yog ib txoj hauv kev los ua cov haujlwm ntxuav ntawm cov khoom siv tsis tau tswj xyuas los ntawm cov khoom tam sim no ua ntej cov khoom raug puas tsuaj.
Yuav pov tseg yog dab tsi?
Ib qho tseem ceeb tshaj qhov zoo ntawm. NET moj khaum yog tias nws muab cov khib nyiab tsis siv neeg. Nws cia li tso lub cim xeeb ntawm cov khoom uas tsis siv. Hauv cov lus programming xws li C thiab C ++, tus programmer yuav tsum tswj hwm kev nco ntawm nws tus kheej. Tab sis hauv hom lus xws li C uas yog tsim los ntawm. NET moj khaum muab cov khoom khib nyiab. Nws pab tswj kev nco. Nws tsis tuaj yeem siv los tso tawm cov peev txheej nco tsis tau tswj hwm. Txoj kev pov tseg () siv tau los ua kom tiav txoj haujlwm no.
Txoj kev pov tseg () tuaj yeem siv los tso tawm cov peev txheej xws li kev sib txuas ntawm cov ntaub ntawv, cov ntaub ntawv tuav thiab lwm yam. Txoj kev no tsis yog hu ua cia li. Yog li ntawd, tus programmer yuav tsum siv txoj kev no. Thaum txoj kev no raug hu, lub cim xeeb rau cov peev txheej tshwj xeeb uas tsis tau tswj hwm tau tso tawm. Txoj kev no tau tshaj tawm hauv lub interface IDisposeable.
Dab tsi yog qhov kawg ()?
Txoj kev ua tiav tsuas yog hu los ntawm tus neeg khaws khib nyiab thaum siv cov khoom siv ntxiv. Txoj kev no yog hu ua ua ntej rhuav tshem cov khoom. Txoj kev no yog siv nrog kev pab los ntawm tus destructor. Txoj kev ua tiav yog txhais hauv chav kawm java.lang.object. Txoj kev no tau tshaj tawm tias muaj kev tiv thaiv. Nws tsis raug tshaj tawm rau pej xeem kom tsis txhob nkag mus los ntawm lwm cov chav kawm. Zuag qhia tag nrho, txoj kev ua tiav tuaj yeem txo qhov kev ua tau zoo ntawm qhov program vim nws tsis tso lub cim xeeb tam sim.
Dab tsi yog qhov zoo sib xws ntawm pov tseg () thiab ua tiav ()?
Ob leeg pov tseg () thiab ua tiav () tuaj yeem siv los tso lub cim xeeb pub dawb rau cov peev txheej tsis tau tswj hwm
Qhov txawv ntawm qhov pov tseg () thiab qhov kawg () yog dab tsi?
dispose () vs finalize () |
|
Qhov pov tseg () yog ib txoj hauv kev los kaw lossis tso cov kev tswj tsis tau xws li cov ntaub ntawv, cov kwj tuav los ntawm ib qho khoom. | Qhov kawg yog ib txoj hauv kev los ua haujlwm huv ntawm cov peev txheej uas tsis tau tswj hwm los ntawm cov khoom tam sim no ua ntej cov khoom raug puas tsuaj. |
Objective | |
Txoj kev pov tseg yog siv los tso cov peev txheej uas tsis tau tswj hwm thaum nws tau thov. | Txoj kev ua tiav yog siv los tso cov peev txheej uas tsis tau tswj hwm ua ntej qhov khoom puas tsuaj. |
Defined Interface or Class | |
Qhov pov tseg () txhais tau hais tias nyob rau hauv lub interface IDisposable interface. | The finalize () yog txhais hauv java.lang.object class. |
Txoj Kev Thov | |
Tus txheej txheem pov tseg yog hu los ntawm tus programmer. | Txoj kev ua tiav yog thov los ntawm tus neeg khaws khib nyiab. |
Access Specifier | |
Txoj kev pov tseg yog pej xeem. | Tus txheej txheem kawg tau tiv thaiv. |
Txoj kev pov tseg yog hu ua instantly. | Tus txheej txheem kawg tau thov maj mam. |
Kev pov tseg yuav tsis txo qhov kev ua tau zoo ntawm qhov kev pab cuam. | Tus txheej txheem kawg tuaj yeem txo qhov kev ua tau zoo ntawm qhov program. |
Summary – pov tseg () vs finalize ()
Kab lus no tau tham txog qhov sib txawv ntawm kev pov tseg thiab ua tiav cov txheej txheem hauv C. Qhov txawv ntawm pov tseg () thiab qhov kawg () yog qhov ntawd, pov tseg () yuav tsum tau hais meej meej los ntawm tus programmer thaum qhov kawg () raug hu los ntawm tus neeg khaws khib nyiab ua ntej rhuav tshem cov khoom.