У меня есть таблица, в которой загружаются фотографии меню ресторанов в диапазоне от 200 килобайт до 2 МБ с использованием модуля kingFisher.
![Downloaded Pictures](https://i.stack.imgur.com/F2Fjb.jpg)
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "MealCell", for: indexPath) as! MealTableViewCell
let defaultImage = UIImage(named: "DefaultMeal")
cell.mealImageView.kf.setImage(with: url, placeholder: defaultImage, options: [.transition(.fade(0.3))])
bla bla bla...
return cell
}
I Я не использую предварительную выборку, и я не думаю, что моя проблема связана с предварительной выборкой.
Моя главная проблема заключается в том, что при входе в меню ресторана размером около 800 Кб процесс загрузки начинается очень медленно .
![enter image description here](https://i.stack.imgur.com/xAY48.png)
И при очень быстрой прокрутке приходится ждать 1-2 минуты для загрузки всех моих фотографий, по сравнению со скоростью загрузки на мой сервер и моя домашняя скорость загрузки довольно далека.
Я начал искать везде одну и ту же проблему, но не нашел ни одной.
Я использовал этот код для увеличения времени ожидания загрузчика, и он работал для изображения, которые вообще перестают загружаться.
KingfisherManager.shared.downloader.downloadTimeout = 600
А также, когда я открываю вкладку сети отладчика Xcode, я понимаю, что мое приложение зависит только от одного TCP-соединения и, как показано на рисунке ниже, оно ОНЛ y использует 73 КБ / с для этих больших изображений.
![Network Debugger](https://i.stack.imgur.com/lMJl2.png)
Я также пытался это сделать, но проблема все еще заключается в том, что загрузка все еще зависит только от одного подключения .
KingfisherManager.shared.downloader.sessionConfiguration.httpMaximumConnectionsPerHost = 8
Что именно я делаю не так, есть ли способ загрузить его быстрее.
Любая помощь будет оценена.