우리는 테스트 목적으로 NSWindow
에 "cocos Player"를 표시하는 컨텐츠 편집기를 구축하고 있습니다. 사용자는 일부 내용을 테스트 한 다음 창을 닫을 수 있습니다.cocos2d Mac 종료 및 시작시 런타임
그래서 코코스를 종료하고 동일한 응용 프로그램 내에서 다시 시작할 수 있어야합니다.
CC_MAC_USE_DISPLAY_LINK_THREAD
스레딩 모델을 사용하면 모든 것이 작동합니다. 이 작업을하려면 CCDirectorMac
에 수정해야했습니다. CCDirectorMac | stopAnimation
에서 _runningThread
은 CC_MAC_USE_DISPLAY_LINK_THREAD
을 사용할 때 #if
및 #elif
에 의해 nil로 설정되지 않았기 때문에 nil
으로 설정해야했습니다.
어쨌든 이제 감독을 "끝내고"나중에 문제없이 다시 시작할 수 있습니다.
내 질문 비록이 : 만약 내가 cocos2D의 가끔 사용과 함께 AppKit 편집기를 구축하고 내 스레딩 모델은 실제로 CC_MAC_USE_MAIN_THREAD
설명서에 제안되어 있습니까?
내가 CC_MAC_USE_MAIN_THREAD
를 사용합니까
stopAnimation
에서의
HANG를 얻을 :
CVDisplayLinkStop(displayLink);
NSWindow
에서 cocos2d를 종료하고 다시 시작하는 샘플 코드를 찾을 수 없습니다. 여기 내 가정은 테스트되지 않은 바닷물 (또는 거의 테스트하지 않은 바닷물)입니다. 종료/재시작을
내 단계는 다음과 같습니다
- 전화
[[CCDirector sharedDirector] end]
- 이
stopAnimation
다음 - 내가 스레딩에 원래
어떤 조언을했던 것과 같은 방법적인 Cocos2D 다시 초기화 호출 맥 데스크톱 애플 리케이션을위한 모델 ... 그리고 왜 CVDisplayLinkStop
교수형 크게 감사하겠습니다.
미리 감사드립니다. 좋아
내 앱에서 똑같은 동작이 발생합니다. CC_MAC_USE_MAIN_THREAD (내가 얻은 이상한 문제를 해결하는)로 전환하면 앱을 종료하려고 할 때 중단됩니다 ([[CCDirector sharedDirector] end]를 호출). 이걸 알아 냈어? –