Блокировка и разблокировка семафора из разных потоков в Какао - PullRequest
4 голосов
/ 19 марта 2011

Мне нужно использовать какой-то семафор для защиты доступа к мьютексной зоне, но мне нужна эта зона, чтобы охватить несколько потоков. Вот что я нашел в документации:

Предупреждение: класс NSLock использует POSIX потоки для реализации его блокировки поведение. При отправке разблокировки сообщение для объекта NSLock, вы должны убедитесь, что сообщение отправлено с тот же поток, который отправил начальную блокировку сообщение. Разблокировка замка от другой поток может привести к неопределенное поведение.

Я помню, я читал, что это способ предотвратить ошибки программирования. Это утверждение правильно? Я прочитал руководство по созданию потоков из документации, но не могу найти какой-либо другой класс, который бы позволял блокировать и разблокировать различные потоки. Есть ли другое решение в Какао, чтобы сделать это? Спасибо!

1 Ответ

5 голосов
/ 19 марта 2011
...