인프런 커뮤니티 질문&답변

최현석님의 프로필 이미지
최현석

작성한 질문수

우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)

병렬성 1 - Futures(4-2)

GIL 관련 질문

작성

·

182

0

GIL 관련 질문이 있습니다. 1) 먼저 만약 GIL 을 써서 multi-thread 진행시, 다른 thread 에서 같은 변수에 접근을 못하게 막는다면, cpu 연산만 필요한 코드의 경우에는 전혀 빨라지지 않고 오히려 느려지는거 같은데, 맞을까요? 2) 그리고 뒤쪽에 수업중에 GIL 에도 불구하고, 파이썬에서 multi-thread 쓰는 경우는 system call 작업이 진행되는 I/O bound 일 때 multi-thread 가 효과를 발휘한다고 말씀주신거 같은데(python2,4 모두 수강중입니다), 왜 그럴까요? 어차피 single thread 에서 async non-block 으로 하면 system call 일들을 안기다리고 다른 일이 진행되고, system call 된 다운로드등의 일처리가 끝나면 결과를 받아서 처리하는게 마찬가지 아닌가 해서 질문드립니다.

답변 1

0

좋은사람님의 프로필 이미지
좋은사람
지식공유자

안녕하세요.

해당 내용들은 파이썬 고급(병렬성)과정에서 심화적으로 다루게 됩니다.

내용이 방대해서 링크로 대신 드릴께여!

한 번 읽어보세요.

https://velog.io/@codemcd/Sync-VS-Async-Blocking-VS-Non-Blocking-sak6d01fhx

 

Gil

https://m.blog.naver.com/alice_k106/221566619995

최현석님의 프로필 이미지
최현석

작성한 질문수

질문하기