• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    해결됨

컴파일러 최적화 강의 관련 질문

23.03.07 13:36 작성 조회수 400

1

안녕하십니까 선생님

귀한 강의 항상 감사한 마음으로 듣고 있습니다.

 

아래 질문과 관련해 릴리즈 모드로 해서 실행을 하면 먹통이 되어야 하는데, 저는 먹통이 안 되고 "종료성공"까지 다 나옵니다. 혹시 이유를 알 수 있을까요?

참고로 아래 질문의 증상과 저도 동일하게 나타났고 닷넷 프레임워크로 프로젝트를 만들었습니다.

혹시나 해서 닷넷코어로 프로젝트를 만들어서 해보면 수업처럼 먹통이 되긴 하는데, 닷넷프레임워크로 프로젝트 만들면 릴리즈로 실행 시 먹통이 안 되고 잘 실행이 됩니다.

감사합니다~!


 


--아래 질문----------------

안녕하세요, 선생님 c# 게임 서버 강의를 수강하다가 선생님과 다르게 작동하는 부분이 있어서 질문드립니다

6번째 강의인 컴파일러 최적화 강의에서 코드를 실행하면 4:25초경에

쓰레드 시작!

쓰레드 종료!

Stop 호출

종료 대기중

종료 성공

이 순서대로 선생님은 실행이 되는데요, 저는

쓰레드 시작!

Stop 호출

종료 대기중

쓰레드 종료!

종료 성공

순서로 쓰레드 종료!가 더 늦게 뜨네요

강의에서처럼 _stop에 volatile을 붙이면 선생님이랑 같은 값이 나오긴 하는데

컴퓨터 성능 차이 때문일 수 있나요?

코드가 다른 부분은 없습니다. 몇 번이고 확인했어요

감사합니다!

답변 1

답변을 작성해보세요.

1

네 멀티쓰레드는 환경에 따라 상이하게 동작하기 때문에
다르게 동작한다고 해서 이상한 것은 아닙니다. (그래서 더 끔찍하죠)