C#에서 coroutine(코루틴)은 비동기 코드를 구현하기 위한 방법 중 하나이다. 지금까지는 비동기라는 점만 알고 딱히 사용하지는 않았는데 이제와서 다시 생각해보니 async 키워드랑 어느 부분이 다른지 정확히 알고싶어서 공부해보았다. 1.코루틴의 정의 C#에서 coroutine(코루틴)은 비동기 코드를 구현하기 위한 방법 중 하나입니다. Coroutine은 일반적인 메서드처럼 보이지만, 중간에 일시 중지되어 다른 coroutine을 실행하고 나중에 중단한 지점부터 계속해서 실행됩니다. 라고 한다. 한마디로 일시정지가 가능한 비동기 방법이다. 이는 게임에서 굉장히 유용하게 사용할 수 있을듯 하다. 2.코루틴은 왜 사용하나 ? 유니티에서 코루틴은 비동기 작업을 처리하면서도 게임 루프의 제어를 유지할 수..
뇌를 자극하는 c#5.0을 보고 배운 나로써는 using문을 보고 이런 문법이 있나,,? 라는 생각이 들었다. c#11까지 나온걸 지금에서야 알았다,, 앞으로 https://www.csharpstudy.com/latest/CS8-using.aspx 에서 c# 5.0이후의 코드들을 공부해보려고 한다. using문의 정의는 using 선언은 using 키워드 뒤에 오는 변수 선언으로서, using 뒤에 있는 변수가 using을 둘러싼 범위를 벗어날 경우 Dispose 하도록 컴파일러에게 지시하게 된다. 기존의 using문을 사용할 경우 괄호 {...} 를 표시해야 했는데, using 블럭 전체를 들여쓰기 해야 하는 불편함이 있었다. using 선언은 (별도의 괄호를 메서드 내부에 사용하지 않는 한) 통상 메..
본 글은 요미들을 위한 설명입니다. Thread 스레드 1. 간단한 개념 스레드는 운영체제에서 제대로 배우게 되는데, 프로세스 내의 작업 단위다. 일반적으로 하나의 프로세스는 한개의 스레드를 가지고 작업을 수행한다. 여러 개(멀티 스레드)일 수도 있다. 2. 커널 수준과 사용자 수준 커널수준과 사용자 수준이 있다. 대부분 일반적인 프로그래머가 사용하는건 사용자 수준 스레드이다. 커널 수준 : 하드웨어 수준? 으로 보면 쉽다. 커널 레벨에서 제어한다. 일반적으로 사용자가 하고싶다고 가능한 영역이 아니라는 것이다. 이 경우는 실제로 동시에 병렬적으로 수행이 가능하다. Ex) 실제(real) 병렬성 Thread 1 ----------> Thread 2 --------------> ㄴ위의 예시를 보면 Threa..