Issue2: я хочу создать модальные окна (диалог входа в систему) и окна сообщений в потоке, охватываемом из основного потока.
В Какао почти весь код пользовательского интерфейса должен выполняться в главном потоке. Есть несколько ограниченных, четко определенных исключений (например, потоковый чертеж с подпиской, представленный в Snow Leopard), но общее правило - не запускать код пользовательского интерфейса в другом потоке.
Кроме того, вам все равно не нужна нить. Это не значит, что модальное диалоговое окно будет интенсивным в вычислительном отношении.
Отправьте NSApp сообщение runModalForWindow:
, передав диалоговое окно. Это запустит диалог в главном потоке, блокируя остальную часть вашего пользовательского интерфейса. Если вы не хотите блокировать пользовательский интерфейс (как правило, не следует), просто сделайте его ключевым и разместите его как обычно.