2012-01-15 11 views

Respuesta

6

OK, así que sqlite3_threadsafe() devuelve 2 por lo que se compila con SQLITE_CONFIG_MULTITHREAD en iOS. Eso es desafortunado, me hubiera gustado Serialized.

sqlite3_config (SQLITE_CONFIG_SERIALIZED) por desgracia me da SQLITE_MISUSE

+0

intenta abrir la conexión de base de datos con plena mutex: 'sqlite3_open_v2 (sqliteFilePath, y SQLite, SQLITE_OPEN_CREATE | SQLITE_OPEN_READWRITE | SQLITE_OPEN_FULLMUTEX, NULL);' –

3

De acuerdo con esta respuesta - https://stackoverflow.com/a/7799021/40444

Parece que puede hacer lo siguiente:

sqlite3_shutdown(); 
if (sqlite3_config(SQLITE_CONFIG_SERIALIZED) == SQLITE_OK) { 
    NSLog(@"sqlite configured to be threadsafe); 
} 
sqlite3_initialize(); 

Sin embargo no está claro si esto funciona oficialmente.

+0

lamentablemente registro 'sqlite3_threadsafe()' no muestra ninguna diferencia después ha aplicado la configuración .. . –

Cuestiones relacionadas