Capítulo 22. Roscado avanzado
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Comenzamos el Capítulo 14 con los fundamentos de los hilos como precursores de las tareas y la asincronía. En concreto, mostramos cómo iniciar y configurar un hilo, y cubrimos conceptos esenciales como la agrupación de hilos, el bloqueo, el giro y los contextos de sincronización. También introdujimos el bloqueo y la seguridad de los hilos, y demostramos la construcción de señalización más sencilla, ManualResetEvent
.
Este capítulo retoma el tema de los subprocesos donde lo dejó el Capítulo 14. En las tres primeras secciones, profundizamos en la sincronización, el bloqueo y la seguridad de los subprocesos. A continuación tratamos:
Bloqueo no exclusivo (
Semaphore
y bloqueos de lector/escritor)Todas las construcciones de señalización (
AutoResetEvent
,ManualResetEvent
,CountdownEvent
yBarrier
)Inicialización perezosa (
Lazy<T>
yLazyInitializer
)Almacenamiento hilo-local (
ThreadStaticAttribute
,ThreadLocal<T>
, yGetData
/SetData
)Temporizadores
La rosca es un tema tan amplio que hemos puesto material adicional en línea para completar el cuadro. Entra en Internet para debatir sobre los siguientes temas, más arcanos:
Monitor.Wait
yMonitor.Pulse
para escenarios de señalización especializadosTécnicas de sincronización no bloqueante para la microoptimización (
Interlocked
barreras de memoria,volatile
)SpinLock
ySpinWait
para escenarios de ...
Get C# 8.0 en pocas palabras now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.