Lock
Eine Sperre (Lock) ist ein Synchronisationsprimitiv, das exklusiven Zugriff auf gemeinsam genutzte Ressourcen gewährleistet; Typen sind u. a. Mutex, Lese-Schreib-Sperren und Spinlocks.
Zweck
Schützt kritische Abschnitte vor Datenraces — der Kern der Shared-Memory-Nebenläufigkeit.
Mechanismus
Mutex: exklusiver Zugriff, nur ein Thread hält ihn gleichzeitig. Lese-Schreib-Sperre: viele Leser, ein Schreiber. Spinlock: aktives Warten ohne Schlaf. Reentrant Lock: derselbe Thread darf ihn mehrfach erwerben. Auf die Sperrreihenfolge achten, um Deadlocks zu vermeiden.
Anwendungsfälle
- Nebenläufige Synchronisation
- Schutz kritischer Abschnitte
- Thread-Sicherheit