Multithreading в swift с нуля: урок 12 - GCD Dispatch Group + Bonus

  Рет қаралды 10,778

The Swift Developers

The Swift Developers

Күн бұрын

Пікірлер: 50
@ilyasports8468
@ilyasports8468 Ай бұрын
Лучшее что можно найти на ютубе, огромное спасибо за ваш труд, жаль контент не продублирован в ВК видео
@sergeylobanov4245
@sergeylobanov4245 3 жыл бұрын
Я думал никогда не разберусь с многопоточностью)) Но всё изменилось, когда я нашел ваши уроки. Уверен, ваш труд делает этот мир чуточку лучше. Спасибо
@enzo0508
@enzo0508 4 жыл бұрын
Работа с группой сделана с ошибкой, которая может привести к тому что изображения никогда не появятся, если один из ответов будет с ошибкой. Все это из-за использования guard. В случае ошибки не выполняется aGroup.leave() Есть два решения: 1. Развернуть опционал картинки через if let image1 = result { images.append(image1) } 2. Добавить defer { aGroup.leave() }
@akhmedovbakhtovar7142
@akhmedovbakhtovar7142 Жыл бұрын
+ в функции asyncGroup() надо поменять цикл for. aGroup.notify(queue: .main) { for i in 0...images.count-1 { view.ivs[i].image = images[i] print(images[i]) print(2) } }
@РавильВильданов-ю7я
@РавильВильданов-ю7я 6 жыл бұрын
24:08 "Если у кого-то пошла кровь из глаз, вы не расстраивайтесь" ))))))
@LinaEngel
@LinaEngel Жыл бұрын
Огнище!! Спасибо, что ты есть и объясняешь все на примерах🙌🏻
@akhmedovbakhtovar7142
@akhmedovbakhtovar7142 Жыл бұрын
Вы просто гений
@Pokruchin
@Pokruchin 6 жыл бұрын
Спасибо большое за уроки, все понятно, а с практическими примерами вообще шик. Нигде таких уроков подробных и фундаментальных больше не видел, даже на английском. Отдельное спасибо за спрайткит! Продолжайте в том же духе!
@Павел-н5ш1и
@Павел-н5ш1и 2 жыл бұрын
Супер! Надо пересмотреть еще раз)))
@dimaomelchenko1451
@dimaomelchenko1451 Жыл бұрын
Интересно послушать, даже имея не малый опыт, спасибо за контент)
@MegaDigri
@MegaDigri 6 жыл бұрын
Урок + топовые фразы от Евгения 😁😁😁
@m1k0lau5
@m1k0lau5 4 жыл бұрын
30:07 из группы нужно выходить и в блоке guard тоже
@vadimomelchenko699
@vadimomelchenko699 3 жыл бұрын
Шикарное объяснение и примеры. Спасибо за урок))
@AusiAion
@AusiAion 4 жыл бұрын
Отличные примеры и разъяснения, благодарю!
@dmitry3881
@dmitry3881 5 жыл бұрын
Все ок, все понравилось) Когда сказал "кровь из глаз, но вы же хотели примеров", конечно лучше так и с примерами. Потому, что я представить не могу, как бы мы(новички) все это делали сами с теми же фотками. А сейчас все очень даже становится на свои места
@ForcyProd
@ForcyProd 2 жыл бұрын
спасибо за уроки, большое дело делаете!
@vadim_polovoi
@vadim_polovoi 2 жыл бұрын
Спасибо за урок!
@caspernew6697
@caspernew6697 4 жыл бұрын
Огромная благодарность за практику ! )
@77nixter
@77nixter 4 жыл бұрын
Спасибо большое!!! Класный урок 👍
@mikhailov_al
@mikhailov_al 4 жыл бұрын
Спасибо огромное!
@theswiftdevelopers1301
@theswiftdevelopers1301 4 жыл бұрын
Куда присоединиться: 1.Наше сообщество в вк(добаляемся к более 3,5 тыс) = vk.com/theswiftdevelopers 2.В телеграмме мы помогаем новичкам и всем желающим (нас больше 1,500 тыс) - t.me/joinchat/BAn0BkLMGrfpDYy2cnysNg p.s Домашние задание: смотрите в группах! Если все понравилось ты знаешь что делать;) Ставь лайк и пиши комент! :)
@Intentor1
@Intentor1 4 жыл бұрын
Спасибо большое! Очень досконально - это хорошо.
@СергійПанасенко-у4м
@СергійПанасенко-у4м Жыл бұрын
спасибо!
@sanchezcodez9359
@sanchezcodez9359 2 жыл бұрын
Спасибо за труд, сенсей! Домо Аригато!
@raulstudylab9041
@raulstudylab9041 5 жыл бұрын
всё очень понравилось!
@fedorlosev616
@fedorlosev616 5 жыл бұрын
Зашло отлично!
@aleksejsigaj1373
@aleksejsigaj1373 5 жыл бұрын
Спасибо!
@Storage-u9c
@Storage-u9c 5 жыл бұрын
спасибо
@araapoyan2814
@araapoyan2814 3 жыл бұрын
Very cool!!!!
@saffin
@saffin 4 жыл бұрын
Хорошо бы скачать файлы с кодом этих уроков по многопоточности. Чтоб подлядывать если что туда. Где можно их достать???
@КонстантинКозлов-б8т
@КонстантинКозлов-б8т 3 жыл бұрын
Есть ли видео где более подробно описываются @escaping замыкания?
@kurenkovalex7578
@kurenkovalex7578 4 жыл бұрын
товарищи, кто знает, подскажите в чем смысл такого метода загрузки тех же изображений? по сути делая блоки enter() и leave() мы сериализуем задачи диспатч группы. Получается, что загрузка, а затем и последующая запись в массив картинок идет по порядку, т.е. аналогично тому, что мы бы выполняли все эти 4 задачи синхронно. Суть получается только в том, что приходит notify о том, что группа была загружена. и по этому нотифаю мы кладем картинки на imageview. Но в чем разница, между этим, и созданием, например 4ех DispatchWorkItem. которые будут выполняться асинхронно. каждый по отдельности (в отдельном потоке например), а по загрузке изображения внутри айтема делать нотифай, по которому класть картинку в массив, затем увеличивать какойнибудь кайнтер на 1 и затем, когда каунтер дойдет до 4ех, грузить картинки в imageView. получается метод с 4мя айтемами будет, по идее, работать быстрее в 4 раза, потому что загрузку мы будем осуществлять параллельно, а не последовательно.
@S1a1n1y1a
@S1a1n1y1a 4 жыл бұрын
Думаю для контроля, по-больше степени. Ведь если две картинки загрузятся одновременно например, то на момент записи по одному уведомлению потеряется второе и все трах бабах... Но это только мысли вслух
@r00t67
@r00t67 2 жыл бұрын
Ещё стоит images.append(image1) защитить семафором т.к. запись в шаред ресурс
@bejan6622
@bejan6622 2 жыл бұрын
Огромное спасибо за уроки, но есть вопрос потому, что на данный момент выходит так что в урлсессии выходит быстрее почему-то одновременно. Возможно подскажете почему так
@gabibli
@gabibli 6 ай бұрын
25:46
@jandeveloper
@jandeveloper 6 жыл бұрын
Все супер! Но у меня путаница между asyns, sync, serial, concurrent, global. Не могу понять...
@theswiftdevelopers1301
@theswiftdevelopers1301 6 жыл бұрын
вернись к первому уроку и практикуйся
@riddik18
@riddik18 5 жыл бұрын
ну ты и смешной))), ты же кричал тут и доставал автора давай next next next, я раньше изучал, я все это знаю и тд, и тут выясняется что ты ничего не знаешь)
@mikhailov_al
@mikhailov_al 4 жыл бұрын
@@riddik18 ахах)
@ХизирДудуев-м1у
@ХизирДудуев-м1у 6 жыл бұрын
Получается этот Нотифай только для уведомления , что в потоке все отработало ? Больше не чего ?
@07shama
@07shama 4 жыл бұрын
Спасибо, знал бы это раньше - не стал бы связываться с SDWebImage
@СынБибиджона
@СынБибиджона 4 жыл бұрын
SD кэширует в добавок и тебе не пришлось благодаря этому использовать для кэша картинок нсКэш
@dmitry3881
@dmitry3881 5 жыл бұрын
Как я понимаю в настоящей работе уже все так и происходит. Только, наверное через коллекшн вью, чтобы ячейки еще добавлялись автоматом. А так мы все это зашиваем под капот private, а заказчик( у него например интернет магазин), уже сам просто удаляет и добавляет ссылки на свои товары. Почти так?)
@gummibarchen1372
@gummibarchen1372 4 жыл бұрын
Жаль материал 2018 года
@theswiftdevelopers1301
@theswiftdevelopers1301 4 жыл бұрын
ENUM , да вроде еще работает
@gummibarchen1372
@gummibarchen1372 4 жыл бұрын
The Swift Developers я имел ввиду сам канал многое старое , а так это первое место где я всегда беру знания по Свифт . Спасибо
@magomedn2057
@magomedn2057 2 жыл бұрын
Большое спасибо!
@mak_whisk
@mak_whisk 3 жыл бұрын
Спасибо
@rauankoshkinbayev1506
@rauankoshkinbayev1506 5 жыл бұрын
Спасибо !
Multithreading в swift с нуля:  урок 13 - GCD Dispatch Barrier
14:39
Multithreading в swift с нуля:  урок 1 - Thread & Pthread
26:09
The Swift Developers
Рет қаралды 39 М.
SLIDE #shortssprintbrasil
0:31
Natan por Aí
Рет қаралды 49 МЛН
Sigma girl VS Sigma Error girl 2  #shorts #sigma
0:27
Jin and Hattie
Рет қаралды 124 МЛН
Multithreading в swift с нуля:  урок 11 - GCD  Semaphore
19:53
The Swift Developers
Рет қаралды 8 М.
Maksym Husar - Dig into Value types  @ CocoaHeads Kyiv #15
57:45
CocoaHeads Ukraine
Рет қаралды 4,4 М.
Grouping network calls like a boss - DispatchGroup
14:35
Swift Arcade
Рет қаралды 4,1 М.
Responder chain & Hit testing | SWIFT
15:01
Swift Magic
Рет қаралды 8 М.
When to Semaphore vs Dispatch Group! Careful Multithreaded Shared Resource
11:11
SLIDE #shortssprintbrasil
0:31
Natan por Aí
Рет қаралды 49 МЛН