Red de conocimiento informático - Material del sitio web - Subprocesos múltiples: escenarios de aplicaciones de seguridad de lectura/escritura en iOS

Subprocesos múltiples: escenarios de aplicaciones de seguridad de lectura/escritura en iOS

Seguridad de lectura y escritura en iOS

Piense en cómo implementar el siguiente escenario

Al mismo tiempo, solo 1 subproceso puede realizar operaciones de escritura

p>

Al mismo tiempo, se permiten múltiples subprocesos para realizar operaciones de lectura

Al mismo tiempo, no se permiten operaciones de escritura y lectura

El escenario anterior es un Escenario típico de "lectura múltiple y escritura única", generalmente utilizado para archivos en espera de operaciones de lectura y escritura de datos. La implementación de iOS incluye

pthread_rwlock: bloqueo de lectura/escritura

despacho_barrier_async: llamada de barrera asíncrona

Los subprocesos que esperan que el bloqueo entren en suspensión

La cola concurrente pasada por esta función debe ser creada por despacho_queue_cretate

Si se pasa una cola concurrente en serie o global, esta función es equivalente al efecto de la función despacho_async

Esquema< / p>