Using 블록을 사용하면 코드에서 블록을 종료할 때 시스템에서 리소스를 해제하도록 할 수 있다.
이 블록은 많은 양의 메모리를 사용하거나 다른 구성 요소에서도 사용할 수 있는 시스템 리소스를 사용하는 경우에 유용하다. Using 블럭은 리소스 변수를 초리화하고, 블록의 코드를 실행하며, 종료하기 전에 변수를 제거하는 역할을 한다.
이 때 변수로 사용할 수 있는 개체는 System.IDisposable 개체를 구현한 클래스만 가능하다. 즉, Using 구문은 코드가 다 실행된 후 해당 개체의 Dispose 메서드를 호출하여 자원을 반납하는 기능을 수행한다.
Using varA As New AClass
' varA가 수행해야 할 부분
End Using
Using 문에 사용할 수 있는 변수는 IDispoable 개체를 구현한 클래스인데 IDisposable 개체를 구현하기 위해서는 Implements 키워드를 사용하여 개체 구현을 선언하고Dispose 메서드를 구현해야 한다.
Public Class UsingTest Implements System.IDisposable
' 구현해야 할 메서드
Sub Dispose() Implements System.IDisposable.Dispose
' 자원을 해제할 때 수행하는 부분
End Sub
End Class
Dispose 메서드의 내용은 Using 블럭이 끝나면 호출되어 수행된다.
With 블록은 한 개체에 대해 여러 번 호출해야 하는 경우 with 키워드를 사용해 코드를 간결하게 할 수 있다.
Dim test As New TestClass()
With test
.VarA = 10
.VarB = 20
.VarC = 30
End With
'VB.NET 2008 > VB - 문법' 카테고리의 다른 글
문법 - 제어 구조 밖으로 제어 전달 (0) | 2011.04.04 |
---|---|
문법 - 예외 처리 Try Catch 구문 (0) | 2011.04.04 |
문법 - 루프구조 (0) | 2011.04.04 |
문법 - 판단구조 (0) | 2011.04.04 |
문법 - 프로시저(procedure) (0) | 2011.04.04 |