내 응용 프로그램에는 NSRURLSession을 만들고 NSURLRequest를 사용하여 보내는 기능이 있습니다.
sesh.dataTaskWithRequest(req, completionHandler: {(data, response, error)
이 작업의 완료 블록에서 UIView를 호출하는 뷰 컨트롤러에 추가하는 계산을 수행해야합니다. 나는 func라는 기능이 있습니다
func displayQRCode(receiveAddr, withAmountInBTC:amountBTC)
UIImage-adding 계산을 수행합니다. 완료 블록 내에서 뷰 추가 코드를 실행하려고하면 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)
})
그러나 매개 변수 "receiveAddr"및 "amountBTC"를이 함수 호출에 추가하는 방법을 모르겠습니다. 이 작업을 어떻게 수행하거나 누군가가 응용 프로그램의 기본 대기열에 메소드 호출을 추가하는 최적의 방법을 제안 할 수 있습니까?