У меня есть свойство, объявленное следующим образом:
@property(assign) BOOL die;
Один поток постоянно проверяет, должен ли он умереть, проверяя, не изменилась ли эта переменная на YES.Когда для этого кристалла задано значение YES (пользователь нажимает кнопку), другой обрабатываемый поток все равно видит его как NO.Я тщательно проследил код и увидел, что переменная определенно не отображается как измененная.Что здесь происходит?
Содержит ли каждый поток свой кеш переменной?В Java, моем родном языке, я бы установил ключевое слово 'volatile', чтобы удалить кеширование локальных потоков в свойстве.
Это то, что вы можете сделать в obj-c, или я не на том пути?