Nel tentativo di creare una barra di caricamento per un gioco per iPhone che sto sviluppando (utilizzando Cocos2D), volevo usare un approccio multithread.Programmazione OpenGL multi-threaded in Cocos2D-iPhone
Un thread mostra una schermata di caricamento ed esegue il ciclo di eventi dell'applicazione principale mentre un nuovo thread carica silenziosamente tutti gli sprite in background (tramite spriteWithFile) e quindi li aggiunge a un livello.
ho creare il nuovo thread utilizzando detachNewThreadSelector il metodo di NSThread (che invia gli aggiornamenti sullo stato di carico al thread principale tramite performSelectorOnMainThread).
Il problema che sto affrontando è che ogni chiamata OpenGL (come quella trovata nel metodo spriteWithFile) nel nuovo thread muore con un ERRORE BUS o un errore di accesso alla memoria di qualche tipo. Presumo che ciò avvenga perché entrambi i thread stanno tentando di effettuare chiamate OpenGL allo stesso tempo o il nuovo thread non è a conoscenza del contesto OpenGL.
Cosa si deve fare per consentire a più thread di effettuare chiamate OpenGL su iPhone utilizzando Cocos2D-iPhone.
http://www.cocos2d-iphone.org/forum/topic/363 anche questo è stato utile. –
Link nella prima risposta: 1. Ricevo avvisi di malware dal browser. Quando dico ancora di ignorarlo 2. Ricevo 404. –
Ho risolto il collegamento e aggiornato la risposta. –