У меня есть многопоточное приложение, в котором каждый поток должен выполнять определенную работу, но в определенный момент некоторый код должен выполняться последовательно (например, запись в базу данных sqlite3), поэтому я вызываю этот код, чтобывыполняется в главном потоке с использованием:
[self performSelectorOnMainThread:@selector(serialJob:) withObject:object waitUntilDone:YES];
и все идет хорошо, за исключением того, что когда этому коду требуется некоторое время, взаимодействие с приложением пользователя отключается до тех пор, пока этот код не будет завершен, поэтому есть ли способсоздайте еще один ОДИН поток, который можно запускать в фоновом режиме и вызывать всякий раз, когда мне это нужно, точно так же, как основной, чтобы я мог заменить предыдущий вызов на:
[self performSelector:@selector(serialJob:) onThread:REQUIRED_THREAD withObject:object waitUntilDone:YES];
этот поток должен быть членом статических данных некоторого классабыть доступным со всего кода.
любая помощь будет очень признателен, и большое спасибо заранее ...