Програмиране на C #

Програмиране на курса C # Кратко ръководство # 0153;
Част 5.

5.6. Работа с ресурси изисква изрична освобождаване

В последната част от раздела за интерфейсите споменах, използвайки оператора. която ви позволява да замени обемисти структурата опитайте улов-накрая, когато се работи с ресурси, които изискват освобождаването им, веднага след като сте приключили с използването им. използване дизайн гарантира, че ресурсът ще бъде освободен, дори и ако в процеса на работа с изключение настъпило. Следният код демонстрира използването на двата модела. Да предположим, че имате текстов файл, който се съхранява в определен формат, последователността на точки (X, Y), разделени с "|".

Целта на тази илюстрация - показват, че ресурси като файла, който трябва да работи точно. За да прочетете файла, използвайте класа StreamReader. което позволява работа с данни от файла като поток от символи. След прочитане на данните от файла за достъп е необходимо да се върне на операционната система, и това е поради тази причина, че работата с този клас се изпълнява в контекста на използване на изявлението. Файл, свързани с инстанция на класа StreamReader е добре затворена, дори и ако в хода на четенето евентуални грешки или неочаквани събития.

Когато компилаторът не знае какво е било преди тях клас, който капсулира споделен ресурс, и как да се създаде независимо такъв клас? За компилатор разбере какво да прави с цел, посочено в заглавието, използвайки структурата след завършване на основното устройство, съответния клас трябва да приложи IDisposable интерфейс. Този интерфейс определя един метод изхвърли (). при изпълнението на които трябва да бъдат поставени на кода за освобождаването на програма участват разпределението на ресурсите на. Примери за определяне на тези класове, можете лесно да намерите в MSDN.