using
무슨 일이 있어도 반드시 종료 처리를 호출하고 싶을 때는 using문과 IDisposable(using System)인터페이스를 사용하면 됌
using문이 끝날 때 객체가 가진 Dispose 메서드를 자동으로 호출해서 파일을 닫기 때문에
Close가 없어도 작동한다.
간단한 Dispose를 구현한 클래스 예제
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
public class tttttttt : MonoBehaviour {
class GoodBye : IDisposable
{
public void Dispose()
{
Debug.Log("Close");
}
}
// Use this for initialization
void Start () {
using (var gb = new GoodBye())
{
Debug.Log("aaaa");
return;
}
}
}
결과
aaaa
Close
IDisposable 인터페이스가 좋긴 하다 하지만 클래스 구현하는 낭비를 했음
try-finally 사용하면 훨씬 간단하게 구현 가능
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
public class tttttttt : MonoBehaviour {
void Start () {
try
{
Debug.Log("aaaa");
return;
}
finally
{
Debug.Log("Close");
}
}
}
결과
aaaa
Close
댓글 없음:
댓글 쓰기