async와 sync

w0308h 1월 18일 AM 10:36 5 0
w0308h Profile Image Level 9
2 #TIL

Async vs. sync


작업을 여러 스레드로 분산 처리해서 동시 프로그램이 가능하도록 하려면 async와 sync의 개념이 필요하다.

async는 작업 중인 스레드(메인 스레드)에서 큐로 보낸 작업이 끝나기를 기다리지 않고 즉시 리턴해서,
메인 스레드가 다른 작업을 할 수 있도록 해주는 것이다.

sync는 작업 중인 스레드(메인 스레드)에서 큐로 보낸 작업이 끝나기를 기다렸다가(해당 작업이 완료되면) 다음 작업을 실행한다.
따라서, global().sync 코드를 작성하면 실질적으로는 메인 스레드에서 작업한다. (어차피 해당 시간동안 메인 스레드가 블락되는 것이므로 별 다를 바가 없다)

댓글