Every object consumes some amount of storage in memory, when created by the programmer. Programmer have to dispose all the objects created and empty the storage allocated. This disposing can be done through Dispose() menthod in in-built IDisposable interface, in Visual Studio.
If programmer don’t release the memory, then it can be done by the CLR, according to its decision to perform garbage collection. Using statement allows the programmer to specify, when to release the resources used. The syntax of using statement:
using (ClassName obj = new ClassName())
// Line of code to be executed
The ClassName denotes the name of class to which the object is created. Obj is the object, which will be disposed at the last of this scope of “using” statement. The following code will create an object of Student class and when the debugger will reached on last line of code, it will release the memory allocated by the stu object.
using(Student stu = new Student())
//Line of code to be executed
The other reason of exiting the using statement may be an exception in our line of code. When an exception is generated, it will go to catch method, and dispose method will not be called. So we should use this using statement for better memory management.
Labels: c#, Windows Forms, WPF