luce in altisBLUE SKY

category Photo

Blog


Thread Pool

1. Thread Pool 은 항상 BackGround Thread 로 동작한다. 2. Name 필드를 설정할수 없다. ( 쓰레드에 Name 필드는 설정이 한번만 가능 하기 때문 ) 3. Block 되는 코드를 사용하면 성능이 떨어진다. 4. Thread.CurrentThread.IsThreadPoolThread 속성으로 쓰레드 풀을 사용하는지 알 수 있다.

read more ...

New Syntax in C# 8.0

C# 8.0 에서 바뀐점 1. Defalut Interface 가 생김 interface Test { void DefalutFunc() { ..... } } 2. Using 개선 using 블럭 사용을 개선하여 아래와 같이 사용이 가능하다 public static void Test { using FileSystem test = new FileSystem("text.txt",FileMode.CreateNew); } // test Dispose 3. Nullable Reference #nullable enable : 참조 타입 변수를 null 을 대입하면 경고를 발생시킨다. (#nullable disable : 사용안함) 4. Null 병합 할당자 c# 6.0 null 병합 연산자 string s2 = s1..

read more ...

C# 8.0 Switch Expression

c# 8.0 에선 switch 확장식이 추가 되었다. ex) int n = 20; 일반적인 switch 의 사용 switch(n) { case 10 : break; default : break; } Switch Expression 사용 int s = n switch { 10 => 11, 20 => 22, 30 => 33, _=> 100 }; * _ -> default를 뜻함. *Expression 이란 하나의 값으로 계산 되는식 ( 예 : 리턴을 표기하지 않아도 하나의 값으로 예를 들어 3 * 5 같은것)

read more ...

Index & Range

C# 8.0에서의 Index. 1. "^"의 개념. (Index fromEnd 의 단축 표기법) 아래의 배열이 있다고 가정했을 때.. int a = [1,2,3,4,5,6,7]; int b = a[^2]; ^ => 뒤에서 부터 순서를 센다. 단 이때는 제로 베이스가 아님 즉 실행하면 b = 6 이 나온다. 2. Index 객체 c# 8.0부터는 Index란 개념이 생겼다. 역시 객체라 아래와 같이 선언이 가능하다 Index idx = new Index(2); ex) string a = "abcdefg"; int idx1 = 2; Index idx2 = new Index(2); char c1 = a[idx1]; char c2 = a[idx2]; 둘 다 같은 결과가 나온다. c1 = c c2 = c 그럼 I..

read more ...

콜오브 듀티 월드워2

게임 이름 : 콜오브 듀티 월드워 2 (Call of Duty World War2) 기종 : PC 출시 : 2017.11 클리어 : 2017.11.14 게임을 플레이 한지 일주일만에 클리어 했다. 게임 소감은.. 역시 명작이랄까.. 영화를 한편 보는거 같네.. 이제는 사골 같은 2차대전 소재지만.. 삼국지 처럼 이 소재는 언제나 먹히는거 같다. 하지만 최적화나 버그, 느린 로딩등 아쉬운부분도 있다. 그래도 스토리는 잘 짜여 졌고, 인물관계 묘사도 잘 한거 같다. 내가 대니얼스라면.. 저스맨을 구하러 갔을까? 저런 전쟁속에 있었다면.. 어느 선택을 하더라도 비난할 순 없겠지.. 그래도 고심끝에 대니얼스과 같은 선택을 했을것 같다.

read more ...