inflearn logo
강의

Course

Instructor

Unity 2D Game Development for Beginners Starting from Scratch

Subroutine (Coroutine)

섹션2: 서브루틴

373

parkmira3232171

7 asked

0

질문1. 코루틴은 코루틴이 대기하는 동안 Start()의 다른 함수나 Update() 함수가 진행되는 건가요?

예를들어 밑에 코드에서 cortDT1이 Start()에서 시작하고, 1초 기다리는 동안 Start()의 그 밑에 있는 함수가 실행되는 건가요? 그러면 Update()는 언제 실행되는 건가요? 실행순서가 궁금합니다!

public class Cort3 : MonoBehaviour
{   
    Coroutine cortDT1;
    Coroutine cortDT2;

    // Start is called before the first frame update
    void Start()
    {
        cortDT1 = StartCoroutine(DelayTime(1));
        cortDT2 = StartCoroutine(DelayTime(2));
    }

    // Update is called once per frame
    void Update()
    {   
        if(Input.GetKeyDown("space")){
            StopAllCoroutines();
        }
    }

    IEnumerator DelayTime(float time){

        while(true){
            yield return new WaitForSeconds(time); //메인루틴(update함수)으로 양도권 양보
            print(time + "초 만큼 경과");
        }
    }
}

 

C# unity

Answer 1

0

gametrain

안녕하세요.

코루틴은 개념상으로는 스타트나 업데이트 함수와 별개로 진행됩니다. 즉, 코루틴은 스타트나 업데이트 함수의 진행과 무관하게 따로 실행된다고 생각하시면 됩니다.

  • cortDT1이 Start()에서 시작하고, 1초 기다리는 동안 Start()의 그 밑에 있는 함수가 실행되는 건가요?

맞습니다. 코루틴은 스타트 함수에서 호출하는 그 순간부터 별도의 프로세스로 진행됩니다.

  • 그러면 Update()는 언제 실행되는 건가요? 실행순서가 궁금합니다!

정확히는 코루틴은 업데이트 함수 다음에 실행되고, yield가 있을 경우 지정된 시간만큼 대기하다가 지정된 시간이 경과하면 업데이트 다음에 다시 실행됩니다.

코드 관련 질문

0

21

2

섹션7 수업자료 업로드 부탁드립니다.

0

21

2

Dictionary Key를 int에서 string으로 변경한 이유에 대한 문의

0

18

1

프로젝트 질문 문의

0

45

1

UI 기능 관련 질문이 있습니다!

0

37

2

03-01 (16. CharacterController)

0

31

2

TLS 질문드립니다.

0

43

2

Task 구현 28:36 Equals 에서 잘 모르는 부분이 있습니다.

0

27

2

SpinLock과 컨텍스트스위칭에 대해 질문 남겨요.

0

46

2

픽셀 좌표 스크린 좌표

0

33

0

Locomotion랑 Turn 이 꼭 부모 자식 관계일 필요가 있나요?

0

25

1

Rider대신 VS를 써도 괜찮나요?

0

116

2

Claude Code Pro구독하고 있는 상태에서 크레딧 결제, 사용문의

0

217

2

LobbyUIController의 백키가 사라졌는데 왜그런건가요?

0

41

2

무조건 타이틀 씬부터 시작해야하나요?

0

41

1

BaseUI, UIManager

0

51

3

이수증 관려 문의 드립니다.

0

105

1

섹션2: 충돌처리

0

229

1

low resolution aspect ratios 체크박스 비활성화

0

612

1

섹션2: 충돌처리

0

192

1

섹션2: 에너미공격

0

295

1

섹션2: 에너미이동

0

215

1

섹션2: 에너미 이동2

0

361

2

섹션1 유니티기초: 사용자 오브젝트 제어2

0

328

2