Итак, я прочитал здесь несколько сообщений о системе очередей, но я не могу понять, как сделать то, что я ищу. В настоящее время я перехожу на страницу и загружаю изображения с помощью цикла, и каждое изображение использует асинхронную отправку, показанную здесь.
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
//Load Image Code Goes Here
dispatch_async(dispatch_get_main_queue(), ^{
//Display Image Code Goes Here After Loading.
});
});
И это отлично работает, однако мне нужно иметь возможность уничтожить эту очередь или дождаться ее завершения, прежде чем делать что-либо еще. В основном на некоторых страницах есть десятки и десятки изображений, поэтому все они начинают загружаться, затем я перехожу в совершенно другую область в приложении и загружаю совершенно другое изображение (1-2 изображения), и это занимает почти минуту, потому что это все еще ждет загрузки других изображений. Есть ли способ уничтожить мою старую очередь или приостановить ее? Я видел, как люди говорили: «Вы можете, но это испортит входящие данные», и это нормально, потому что изображение просто загружалось повторно при загрузке новой страницы. Любые идеи?