OpenGL ES 2.0 iPhone - Renderização no segmento principal do bloco de threads em segundo plano

Estou processando o OpenGL Context em um thread de segundo plano com um EAGLContext diferente do thread principa

Eu uso algo como isto:

- (void)renderInBackground {
      EAGLContext *context = [[EAGLContext] alloc] init];
      [EAGLContext setCurrentContext:context];


       Rendering..
    }

o entanto, mesmo que isso seja realizado em um encadeamento em segundo plano, ao usar um shader pesado, o encadeamento principal fica bloqueado e a interface do usuário fica pres

Por que o thread de segundo plano está bloqueando o thread principal? os métodos não são sincronizados.

questionAnswers(2)

yourAnswerToTheQuestion