sqlite3 multiproceso en el objetivo c

Estoy ejecutando un subproceso en segundo plano en mi aplicación con dispatch_async y algunas veces mi subproceso principal y el subproceso en segundo plano acceden a la base de datos al mismo tiempo y esto me estaba dando un error en la base de datos y traté de resolverlo utilizando sqlite3_threadsafe () que siempre estaba regresando 2 es decir, no puedo usar la misma conexión de base de datos en dos subprocesos y quiero que regrese. ¿Puede alguien ayudarme en este sentido?

Respuestas a la pregunta(2)

Su respuesta a la pregunta