디자인 모드 학습 노트 2 - 단일

8604 단어 디자인 모드
가장 오래 사용 되 는 실제 모델... 사랑 해 죽 겠 어... Only you... 그 러 니까 하나 밖 에 없다 는 거 야.
예 를 들 어 사장 님 은 하나 밖 에 없 는데.......................................................
    public class DbProvider
{

public string ConnectionString = "";
private DbProviderFactory MyDbFactorie = null;
private static DbProvider _Current = null;
public static DbProvider Current
{
get
{
if (_Current == null)
{

_Current
= new DbProvider();
}

return _Current;
}
}

이러한 코드 는 다 중 스 레 드 접근 을 방지 할 수 없다.
    public class DbProvider
{

public string ConnectionString = "";
private DbProviderFactory MyDbFactorie = null;
private static DbProvider _Current = null;
object o=new object();
public static DbProvider Current
{
get
{
if (_Current == null)
{
lock(o)
{
if (_Current == null)
{

_Current
= new DbProvider();
}

}

}

return _Current;
}
}

다음은 집중 관 리 를 살 펴 보 자. 예 를 들 어 본사 아래 에 서로 다른 사장 이 있 지만 이런 사장 들 은 모두 유일한 것 이다. 서로 다른 업 태 를 디자인 하 는 것, 예 를 들 어 가정 과 호텔 등 이다.
이렇게 해서 저희 가 실례 화 된 후에 읽 기만 하 는 Item 에 방문 하면 됩 니 다.
 class o
{
public o()
{

object c = new object();
List
<string> c2=new List<string>();
item.Add(
"object", c);
item.Add(
"List", c2);

}
System.Collections.Generic.Dictionary
<string, object> item = new Dictionary<string, object>();
public Dictionary<string, object> Item
{
get
{
return item;
}
}

}

마지막 으로 한 대상 을 제한 하 는 실례 가 몇 개 있다 고 들 었 는데 제 가 봤 을 때 향 원 모드 같 아서 안 나 와 요.

좋은 웹페이지 즐겨찾기