모든 UIKit 드로잉 또는 AppKit 드로잉이 메인 스레드에서 수행되는 이유가 있습니까?UI가 메인 스레드에서 그려지는 이유는 무엇입니까?
답변
더 많은 읽을 수 있기 때문에 빠르게 멀티 스레드 그리기 너무 복잡해진다/conf 사용 "은 응답의 절반에 불과합니다.
다중 스레드 UI 관리에 대한 또 다른 주요 장애는 이벤트 처리입니다. 동시 드로잉으로 이벤트를 혼합하는 작업. 당신은 어떻게 든 화면/키보드/마우스를 부딪 치는 원숭이 인 혼돈과 드로잉을 어쨌든 혼합해야 할 것입니다. 그러나 트랜잭션 무결성의 개념을 효과적으로 유지해야합니다.
이미, 이것은 동시성 없이는 어렵습니다.
이 모든 GUI 도면의 주요 패턴이 이 요소와 그림을 추가하는 화면을 액세스, 단일 스레드에서 수행 될 수있다는 다중 스레드 프로세스
는 10 개 스레드의 각이 경우를 상상하지 이를 처리하기가 매우 어려울 것입니다 및/또는 발견되지 않은 결정적 오류와 문제를 만들 것이라고, 그리거나 화면의 요소를 이동하려고
+1 : 간단한 대답은 그 자리를 친다. 실제로 여러 스레드에서 UI를 관리 할 수 있지만 상황이 매우 쉽게 벗어날 수 있습니다. –
GUI 드로잉을 멀티 스레드 방식으로 구현할 수는 있지만, 동시에 두 곳의 스레드가 동일한 시간에 같은 것을 그리거나 동시에 같은 장소에서 다른 것을 그리지 못하도록 잠금을 추가 할 때까지는 잠금 오버 헤드와 불확실한 불확실한 버그를 추가하는 대신 모든 장점을 잃어 버리게됩니다. – JeremyP
- 1. android에서 UI가 UI 스레드에서 업데이트되지 않는 이유는 무엇입니까?
- 2. NSOperation - 메인 메소드는 메인 스레드에서 실행됩니까?
- 3. PictureDecoder.DecodeJpeg() 호출이 메인 UI 스레드에서 필요한 이유는 무엇입니까?
- 4. UI가 아닌 스레드에서 JNI 콜백
- 5. UI가 아닌 스레드에서 애니메이션 만들기
- 6. 메인 UI가 자식 스레드로부터 붕괴하는 것을 방지하십시오.
- 7. Android :: 메인 스레드에서 메인 스레드를 차단하여 메인 스레드에서 다른 태스크를 실행하기 전에 완료하십시오.
- 8. 백그라운드 및 메인 스레드에서 실행
- 9. 반드시 메인 스레드에서 Webkit을 사용해야합니까?
- 10. 메인 스레드에서 변수 수정 C#
- 11. 메인 스레드에서 MBProgressHUD 문제가 발생합니다.
- 12. 메인 스레드에서 다중 GCD 디스패치
- 13. iOS에서는 메인 스레드에서 뭔가를 실행해야합니까?
- 14. 메인 스레드에서 싱글 톤 - iPhone
- 15. UI가 아닌 스레드에서 대화 상자가 표시됩니다.
- 16. 네트워킹 UI가 기술적이며 직관적이지 않은 이유는 무엇입니까?
- 17. 메인 스레드가 코코아 앱에서 차단되었을 때 UI가 업데이트되지 않습니다.
- 18. 루비 - 메인 스레드에서 하위 스레드 제어
- 19. 메인 스레드에서 핸들러를 생성 할 수 없습니까?
- 20. URLForUbiquityContainerIdentifier : 메인 스레드 외부의 스레드에서 호출해야합니까?
- 21. Android 서비스를 UI 스레드에서 실행해야하는 이유는 무엇입니까?
- 22. 메인 스레드에서 [NSRunLoop runMode : beforeDate :]를 호출하면 대기중인 NSOperations가 메인 스레드에서 실행됩니다.
- 23. COM이 새 스레드에서 작동하지 않는 이유는 무엇입니까?
- 24. UI가 아닌 스레드에서 mainBundle에 액세스 할 수 있습니까?
- 25. 비 GUI 스레드에서 메인 창으로 메시지 보내기
- 26. UI에서 처리를 계속하면서 메인 스레드에서 대기 중
- 27. 메인 스레드의 하위 클래스 스레드에서 콜백 수행
- 28. C# 라이브러리의 메인 스레드에서 실행 중 감지하기
- 29. 메인 스레드에서 QAudioOutput :: start()를 호출해야합니까?
- 30. 메인 스레드에서 pthread_join을 호출하는 것이 유효합니까?
왜 [대부분의 UI 프레임 워크가 단일 스레드입니까?] (http://stackoverflow.com/questions/5544447/why-are-most-ui-frameworks-single-threaded) –