Junior — Middle
85
Objective-C дамуында NSLock класы не үшін пайдаланылады?
Сұралған компаниялар
GreenData
AI-дан жауап
sobes.tech AI
Класс NSLock в Objective-C используется для реализации взаимного исключения (mutex), то есть для синхронизации доступа к общим ресурсам между потоками. Это предотвращает состояние гонки, когда несколько потоков одновременно пытаются изменить одни и те же данные.
Пример использования NSLock:
NSLock *lock = [[NSLock alloc] init];
// В одном из потоков
[lock lock];
// Критическая секция: безопасный доступ к общему ресурсу
// ...
[lock unlock];
NSLock блокирует поток при вызове lock, если другой поток уже удерживает блокировку, и разблокирует при вызове unlock. Это простой и эффективный способ обеспечить потокобезопасность в многопоточных приложениях на iOS/macOS.