AppKit потокобезопасен или нет? - PullRequest
3 голосов
/ 19 апреля 2011

Можете ли вы объяснить мне, является ли AppKit поточно-ориентированным или нет?Где я могу прочитать об этом?(За исключением Руководства по многопоточному программированию, поскольку эта документация создает больше вопросов, а не ответов).Например, я могу проверить VisibleItems NSToolbar в отдельном потоке?Или я могу увеличить значение NSProgressIndicator во втором потоке?

1 Ответ

7 голосов
/ 19 апреля 2011

нет, это не вообще.Вы не должны отправлять сообщения ни в какие объекты пользовательского интерфейса, кроме как из основного потока .

. В приведенном вами конкретном примере вы можете использовать executeSelectorOnMainThread: withObject: waitUntilDone: , чтобыобойти ограничение:

[myToolbar performSelectorOnMainThread: @selector(validateVisibleItems) 
                            withObject: nil
                         waitUntilDone: whatever];
...