У меня есть экран с панелью поиска, когда я покидаю этот экран, я просто отменяю текущий запущенный urlSessionDataTask. Вот мой код, которым я пользуюсь:
override func viewWillDisappear(_ animated: Bool) {
if self.lastURLSessionDataTask != nil, self.lastURLSessionDataTask!.state == .running{
self.lastURLSessionDataTask!.cancel();
self.lastURLSessionDataTask = nil;
}
super.viewWillDisappear(animated);
}
Как вы можете видеть в коде, я сначала проверяю, не является ли моя переменная lastURLSessionDataTask
не ноль, затем проверяю ее состояние, если выполняется, затем отменяю эту задачу.
Теперь проблема в том, что выдает сбой с деталями: [NSURLSessionDataTask state]: unrecognised selector sent to instance
.
Также следует отметить: это не дает сбой каждый раз, это происходит случайно в любое время. Я не уверен, что я делаю неправильно. У кого-нибудь может быть идея? Кто-нибудь сталкивался с этим раньше?