500-1500ms 정도의보기 전환시 짧은 지연이있는 응용 프로그램이 있습니다. 보기의 변경은 미묘하기 때문에 사용자에게 뭔가 잘못되었다는 피드백을 제공해야합니다.계속하기 전에 UI 메시지 루프를 iOS에서 플러시하는 방법
"장착 중"오버레이를 사용하고 싶습니다. 불행히도 CPU를 차지하는 작업은 UI를 만드는 것과 관련되어 있으므로 백그라운드 스레드로 이동할 수 없습니다.
작업이 주 스레드를 차지하고 있기 때문에 다른 작업이 시작되기 전에로드 오버레이를 추가하면 스레드가 다음 작업에서 작업 중이므로 주변 작업이 완료 될 때까지 UI가 업데이트되지 않으므로 결코 표시되지 않습니다. 그것.
일부 운영 체제에는 이와 같은 드문 상황에서 사용할 수있는 DoEvents 또는 FlushMessagePump 메서드가 있습니다. iOS에는 그러한 것이 있습니까? SetNeedsDisplay()는 메시지 펌프의 업데이트 만 대기하므로 원하는 버전이 아닙니다.
다른 제안도 환영합니다.
당신은 그것을 못을 박았다. 고맙습니다. – TwoRedCells
@TwoRedCells 기꺼이 도움이 될 수 있습니다. – Gavin
FWIW 이것은 0이 아닌 값으로 만 작동합니다 (나를 위해). 예 : 0.1 – TwoRedCells