global async안에 global async를 만들게되면 어떻게 되나요??
379
작성한 질문수 2
강의를 보고 global async를 알았습니다. 이게 작업을 큐에 넣어준다고 하셨는데, global async 클로저 안에 global async를 넣으면 어떻게 되는건가요??
답변 2
1
지금 강의를 더 보다가 위 내용이 나왔는데 친절하게 답변을 남겨주셔서 감사합니다. async를 사용한다면 강의에서 나온 교착상태에도 안빠지겠군요!
1
네 안녕하세요 지태님! 아마 강의를 더 수강하시다보면, 뒤쪽에서 내용이 나오기는 할텐데요,
DispatchQueue.global().async {
// 클로저 안의 작업이 2번쓰레드에서 일을 함
}위와 같은 상황은 클로저 안의 모든 작업을 예를 들자면 2번쓰레드에서 작업을 하는 것이고요.
여기서, 지태님이 생각하시는 것처럼
DispatchQueue.global().async {
print("안녕하세요") // 2번쓰레드에서 일을 함
DispatchQueue.global().async {
print("반갑습니다.") // 작업을 다시 보냄 (3번쓰레드에서 일을 함)
}
}
이렇게 일을 시키시면 2번쓰레드에서 하던 작업을
다시 "동시의" 다른 쓰레드로 보내서 작업을 하게 됩니다.
(큐가 알아서 보내게 되기 때문에 다시 2번쓰레드에서 일을 하게 될 수도 있지만, 개념적으로는 "반갑습니다"를 다시 다른 쓰레드에 보내서 일을 하게된다 라고 생각하시면 됩니다.)
감사합니다. :)
오퍼레이션 큐 질문
0
128
2
2) 오퍼레이션큐(OperationQueue) 강의 질문입니다
0
145
2
warning 뜸
0
151
1
수업자료 markup 에 대해 궁금합니다!
0
273
1
예제 프로젝트 빌드 실패
0
331
2
serial 큐 질문드립니다.
0
251
1
[7-3.DispatchBarrier] 예제 코드 질문
0
325
1
안녕하세요, GCD 관련 질문드립니다..
0
284
1
main.async 작동 질문(+ vs global(),async)
0
432
1
dismiss 되었을 때 종료질문
0
303
1
'동기'와 '동시성 프로그래밍'에 대해 질문드립니다.
0
491
2
Dependency Protocol 관련
1
364
1
시리얼 큐와 sync 관련
0
464
2
sync이지만 Queue에 넣으면 async로 동작한다는 말의 의미
0
645
1
lazy var 이슈로 생긴 여러 변수들은 어디에 있나요?
0
385
1
global큐에 sync로 작업을 보냈을 때는 터지지 않는 이유가 궁금합니다.
1
501
2
비동기 개념에서 무엇을 return하는 거죠??
0
391
1
안녕하세욤
1
339
1
Barrier 작업 관련 질문입니다.
1
340
1
디스패치 그룹
1
381
1
동기적 함수를 비동기적 함수로 바꾸는 부분에서 질문 있습니다
1
285
2
비동기오퍼레이션 관련 질문
1
369
1
강의자료는 어디에 있나요?
1
321
1
AsyncOperation을 async await Task로 대체 가능한 지에 대한 질문
1
410
1





