Evitar "NSArray fue mutado al ser enumerado"

Yo tengo unNSMutableArray que almacena mousejoints para una simulación física de Box2d. Cuando use más de un dedo para jugar obtendré excepciones que indiquen

NSArray fue mutado mientras se enumeraba

Sé que esto se debe a que estoy eliminando objetos de la matriz al mismo tiempo que enumero a través de ella, invalidando la enumeración.

Lo que quiero saber es ¿cuál es la mejor estrategia para resolver esto en el futuro? He visto algunas soluciones en línea:@synchronized, copiar la matriz antes de enumerar o colocar la unión táctil en una matriz de basura para su posterior eliminación (lo cual no estoy seguro de que funcionaría, porque necesito eliminar la unión del ratón de la matriz inmediatamente después de eliminarla del mundo).

Respuestas a la pregunta(10)

Su respuesta a la pregunta