본문 바로가기

C#4

C# 줄바꿈 자동 서식 변경(중괄호 {} 사용시) 중괄호를 사용할 때 기본 서식은 줄바꿈이 되는 것인데요. 개인적으로 한줄이라도 적게 하는게 가독성이 좋아, 서식의 줄 추가를 아래와 같이 변경해서 사용합니다. //기본 서식 class C { } void Func() { int LocalFunc() { } } if(a==b) { } //서식 변경 후 class C { } void Func() { int LocalFunc() { } } if(a==b) { } 도구 - 옵션 - 텍스트 편집기 - C# - 코드 스타일 - 서식 - 줄추가 => 중괄호에 대한 줄 바꿈 옵션 모두 해제! 2022. 3. 8.
C# 스레드(매개변수) 실행, 동기화(Lock, Monitor) 매개변수 없는 Thread(스레드) 실행 //일반 스레드 실행 public void ThreadFunc() { //... } new Thread(ThreadFunc).Start(); 매개변수 있는 Thread(스레드) 실행 //매개변수 스레드 실행 : 파라메타는 object형식으로! public void ThreadParamFunc(object num) { int number = (int)num; //... } new Thread(new ParameterizedThreadStart(ThreadParamFunc)).Start(num); 무한루프 Thread(스레드) 실행 //무한루프 스레드 예제 bool isThread = true; public void ThreadFunc() { while(isThrea.. 2022. 3. 8.
C# UI Thread Crash 방지(InvokeRequired) UI 스레드(Thread) UI 스레드 UI만 처리하기 위한 스레드이며 모든 화면을 가진 프로그램은 공통적으로 있음(윈도우프로그램, 안드로이드 앱, 아이폰 앱 등) Work 스레드나 비동기 루틴 안에서 UI에 바로 접근 시에 UI Thread Crash가 발생하게 된다. Thread, async await 등 그래서 다른 스레드에서 UI에 접근 시에는 InvokeRequired를 사용하여 현재 진입한 스레드가 UI Thread인지 체크 한 후 UI 처리를 해야 문제가 없다. 예제 코드(1번, 2번 형식 중 편한것 사용하면 됨) //스레드 에서 UI접근 public void ThreadFunc() { uiFunc(this.label1, "라벨", Color.lightGray); } new Thread(Th.. 2022. 3. 8.
Visual C++ Language Manager Package 에러 메세지 링크 : https://blog.naver.com/richard0326/220325592641 에러 : Visual C++ Language Manager Package 를 제대로 로드할 수 없습니다. 1) 에러 메세지가 뜨면 2) 시작프로그램 Microsoft Visual Studio 2012 -> Visual Studio Tools -> VS2012용 개발자 명령 프롬프트 3) 콘솔창에서 devenv/Setup 입력후, Visual Studio를 껏다 켜면됩니다. ^^ 2018. 1. 9.