Junior — Middle
რის დროს გამოიყენება finally ბლოკი გამონაკლისების დამუშავებაში და რა როლი ასრულებს?
sobes.tech AI
პასუხი AI-სგან
C# დენის finally ბლოკი გამოიყენება კოდის შესასრულებლად, რომელიც უნდა შესრულდეს ნებისმიერ შემთხვევაში try ბლოკის და შესაძლო catch ბლოკების შემდეგ, независимо от того, მოხდა თუ არა გამონაკლისი.
finally-ის მთავარი როლია რესურსების გათავისუფლება, ფაილების დახურვა, ბაზის მონაცემებთან კავშირის დასრულება, მეხსიერების გათავისუფლება და სხვა სუფთავების ოპერაციები, რომლებიც ყოველთვის უნდა მოხდეს.
მაგალითი:
try
{
// კოდი, რომელიც შეიძლება გამოიწვიოს გამონაკლისი
using (var file = new StreamReader("file.txt"))
{
var content = file.ReadToEnd();
}
}
catch (IOException ex)
{
Console.WriteLine("ფაილის წაკითხვის შეცდომა: " + ex.Message);
}
finally
{
// ეს კოდი ყოველთვის შესრულდება, אפילו თუ გამონაკლისი არ იყო ან დამუშავებული
Console.WriteLine("ფაილთან მუშაობა დასრულდა.");
}
თუ try ბლოკში გამონაკლისი მოხდება და ის არ იქნება დაჭერილი, finally მაინც შესრულდება, სანამ გამონაკლისი გადაეცემა ზევით.