Logo ka.boatexistence.com

სრულდება თუ არა ზარის განკარგვა?

Სარჩევი:

სრულდება თუ არა ზარის განკარგვა?
სრულდება თუ არა ზარის განკარგვა?

ვიდეო: სრულდება თუ არა ზარის განკარგვა?

ვიდეო: სრულდება თუ არა ზარის განკარგვა?
ვიდეო: BUSINESS CALL. POOR TELEPHONE CONNECTIONS. SITUATION 1 2024, ივლისი
Anonim

თუ თქვენ ფლობთ მშობლიურ რესურსებს, თქვენ ახორციელებთ როგორც განკარგვას, ასევე დასრულებას, და ორივე უწოდებთ საერთო მეთოდს, რომელიც ათავისუფლებს მშობლიურ რესურსებს. ეს იდიომები, როგორც წესი, კომბინირებულია პირადი განკარგვის (bool disposing) მეთოდის მეშვეობით, რომელიც ზარების განკარგვა true-ით და ზარების დასრულება false-ით.

როდის გამოვიყენოთ დასრულება vs განკარგვა?

მეთოდი dispose() გამოიყენება უმართავი რესურსების გასათავისუფლებლად, როდესაც მას გამოიძახებენ. მეთოდი finalize() გამოიყენება უმართავი რესურსების გასათავისუფლებლად ობიექტის განადგურებამდე. მეთოდი dispose() უნდა განხორციელდეს, როდესაც არის close() მეთოდი.

რა განსხვავებაა განკარგვისა და დასასრულის მეთოდებს შორის?

მთავარი განსხვავება განკარგვასა და დასრულებას შორის არის , რომ განკარგვის მეთოდი ცალსახად უნდა იყოს გამოძახებული მომხმარებლის მიერ, ხოლო მეთოდის საბოლოო გამოძახება ხდება ნაგვის შემგროვებლის მიერ, სანამ ობიექტი განადგურებულია.

გამოიყენება ზარის განკარგვა?

გამოყენების დებულება უზრუნველყოფს, რომ განკარგვა ეწოდებამაშინაც კი, თუ გამონაკლისი ხდება ობიექტზე მეთოდების გამოძახებისას. თქვენ შეგიძლიათ მიაღწიოთ იმავე შედეგს ობიექტის try ბლოკის შიგნით ჩასმით და შემდეგ Dispose-ის გამოძახებით საბოლოო ბლოკში; ფაქტობრივად, ასე ითარგმნება შემდგენელის მიერ გამოყენების განაცხადი.

უნდა დავურეკო Dispose C?

4 პასუხი. ცერის წესი: თუ კლასი ახორციელებს IDisposable-ს, თქვენ ყოველთვის უნდა გამოიძახოთ განკარგვის მეთოდი, როგორც კი დაასრულებთ ამ რესურსის გამოყენებას კიდევ უკეთესია გადაიტანოთ იგი გამოყენების განცხადებაში, რათა დარწმუნდეთ, რომ განკარგვის მეთოდი იქნება გამოიძახება მაშინაც კი, თუ დაშვებულია გამონაკლისი: გამოყენებით (var reader=conn.

გირჩევთ: