Фонд обеспечивает -[NSThread threadDictionary]
.Вы можете использовать это для хранения локально-потоковых объектов Objective-C, которые могут включать NSValue
, обертывающий адрес любого динамического хранилища.
Обратите внимание, что Какао движется к поточному выполнению многопоточного кода, гдеВы отправляете блоки кода для запуска в любом доступном системном потоке.Это модель, используемая Grand Central Dispatch и совместно используемая NSOperationQueue
s.Код, основанный на локальном потоке, не будет наилучшим образом использовать эту модель.См. Apple Руководство по программированию параллелизма для получения дополнительной информации.
ETA: Начиная с iOS 5 / OS X 10.7, Grand Central Dispatch получила то, что вы могли бы назвать локальным хранилищем очередичерез функции dispatch_queue_set_specific
, dispatch_queue_get_specific
и dispatch_get_specific
.Сеттер позволяет вам предоставлять функцию деструктора в дополнение к значению, когда вы устанавливаете новое значение для ключа или когда очередь уничтожается.Очередь получения без использования использует текущую очередь в качестве контекста и будет повторять поиск в целевой очереди текущей очереди, если ключ не определен в текущей очереди (аналогично тому, как работает поиск свойства в прототипной системе OO).