У своєму додатку у мене є функція, яка створює NSRURLSession і надсилає NSURLRequest за допомогою
sesh.dataTaskWithRequest(req, completionHandler: {(data, response, error)
У блоці завершення цього завдання мені потрібно зробити кілька обчислень, які додають UIImage до виклику контролера перегляду. У мене функціонер називається
func displayQRCode(receiveAddr, withAmountInBTC:amountBTC)
що робить обчислення, що додають UIImage. Якщо я спробую запустити додавання коду коду всередині блоку завершення, Xcode видає помилку, кажучи, що я не можу використовувати механізм компонування, коли перебуваю у фоновому процесі. Тож я знайшов якийсь код на SO, який намагається встановити чергу в основний потік:
let time = dispatch_time(DISPATCH_TIME_NOW, Int64(0.0 * Double(NSEC_PER_MSEC)))
dispatch_after(time, dispatch_get_main_queue(), {
let returned = UIApplication.sharedApplication().sendAction("displayQRCode:", to: self.delegate, from: self, forEvent: nil)
})
Однак я не знаю, як додати параметри "receAddr" і "iznosBTC" до цього виклику функції. Як би це зробити, чи хтось може запропонувати оптимальний спосіб додавання виклику методу до головної черги програми?