русс | укр

C# - Головна
Контакти
Задайте питання...
Перегляд всіх питань


Простір імен
  ► System (5)
  ► Microsoft (1)


Для учнів (початківців)
  ► Відео уроки (4)
  ► Навчання (177)
  ► Приклади програм (19)
  ► Секрети Сі Шарп (4)

Для професіоналів
  ► Навчання (6)
  ► Приклади програм (1)










Застосування блоку finally C#

У деяких випадках при обробці виключень із застосуванням блоків try і catch має сенс додатково передбачити блок finally. Цей блок виконується завжди, незалежно від того, чи відбулося виключення в процесі роботи блоку try чи ні.

Найкраще застосування для блоку finally— звільнення ресурсів, замовлених програмою перед виникненням винятків. Хоча система збирання сміття автоматично звільняє непотрібну більш оперативну пам'ять, інші ресурси, такі, як, наприклад, відкриті потоки, пов'язані з файлами, слід закривати явним чином, викликаючи відповідні методи.

Розглянемо приклад використання блоку finally.

using System;

namespace Finally

class FinallyApp

namespase Finally

class FinallyApp

{

static void openFile(string path)

{

Console. WriteLine( "Листівці файлу" );

}

static void closeFile()

{

Console.WriteLine("Закриття файйла");

}

static void writeFile(string data)

{

Console.WriteLine("запис в файл рядка {0}", data);

int x = 0;

int y = 5 / x;

}

static void Main(string[] args)

{

FinallyApp.openFile("numbers.txt");

}

try

{

FinallyApp.writeFilef"test");

}

catch(Exception ex)

{

Console.WriteLine(">>>>> Виняток: {0} ", ex.Message);

}

finally

{

FinallyApp.closeFile();

}

Console.ReadLine();

}

}

}

 

Переглядів: 1349






© 2012 ci-sharp.ru При використанні матеріалу пряме iндексуюче посилання на сайт ОБОВ'ЯЗКОВЕ.
Права строго захищені нормами міжнародного права, інтелектуальної власності та авторського права.