C# .NET 가비지 컬렉션 테스트 예제
using System;
using System.ComponentModel;
using System.ComponentModel;
class Garbage : IDisposable
{
private bool isDispose = false;
private Component component = new Component();
private string name;
{
private bool isDispose = false;
private Component component = new Component();
private string name;
public Garbage(string name)
{
this.name = name;
Console.WriteLine("{0}객체 생성됨...", this.name);
}
{
this.name = name;
Console.WriteLine("{0}객체 생성됨...", this.name);
}
~Garbage()
{
if (!isDispose)
{
Dispose();
}
}
{
if (!isDispose)
{
Dispose();
}
}
public void Dispose()
{
isDispose = true;
{
isDispose = true;
Console.WriteLine("{0}객체의 리소스 해제 OK...{1}", name,
component);
component.Dispose();
//this=null;
component=null;
GC.SuppressFinalize(this);
}
}
component.Dispose();
//this=null;
component=null;
GC.SuppressFinalize(this);
}
}
class GarbageTest1
{
static void Main()
{
Garbage g1 = new Garbage("1번객체");
g1.Dispose();
GC.SuppressFinalize(g1);
}
}
{
static void Main()
{
Garbage g1 = new Garbage("1번객체");
g1.Dispose();
GC.SuppressFinalize(g1);
}
}
오라클자바커뮤니티 실무 개발자 과정 - 개인80% 환급
댓글 없음:
댓글 쓰기