В целях отладки производительности мне нужно следить за ходом обновления моего пользовательского интерфейса всякий раз, когда фоновая задача, управляемая очередью параллелизма GCD, завершает одну из своих задач.
Без искусственной задержки это очень сложноследить за происходящим и реагировать на него.
Каждая задача занимает, возможно, 10 мс.Мне нравится, что вместо этого требуется одна секунда.
Я попытался замедлить задачу очереди, добавив к ней sleep(1);
, но это позволит запускать другие ожидающие задачи.
Что мне нужнов том, что каждая задача действительно занимает свою очередь до тех пор, пока эта дополнительная секунда не закончится.
Как мне это сделать без необходимости реорганизовать весь мой код очереди?В конце концов, это только для отладки, и я хотел бы просто вставить этот код с условной компиляцией вместо того, чтобы заканчивать с другим кодом для отладочной и не отладочной сборок.