Интересный доклад, много раз уже слышал, что корутины это не потоки, они очень "дешевые" с точки зрения памяти, но вот не очень остается понятным, если обьявить локальную переменную внутри блока корутины, то где выделиться под нее память, если корутина это не поток, и для нее не назначается стэк?
Для корутины создается специальный фрейм, содержащий все локальные переменные и стейт с информацией с какого места продолжать выполнение после очередной саспенд-операции. Планировщик берет из пула свободные потоки и дает им на исполнение корутины из очереди. А у корутин стартанувших IO-операции поток отбирает и ставит их в конец очереди ожидания. Как-то так.
Ощущение, что некоторые из задававших вопросы просто не понимают смысла корутины, отличия CPU-bound и IO-bound задачи, разницы в стоимости ожидающей завершения корутины и заблокированного потока. А я не понимаю, зачем придумывать для фич языка и классов новые, невнятные названия из соображений не занятости другими языками. Ладно если требуется избежать коллизий с терминами Явы, тогда в этом есть смысл, но при чем здесь другие языки? Если Майкрософт первым назвал свой класс словом Task, разве означает это, что у них теперь на это название эксклюзивное право?
37 мой минуте: попробуйте создать сто тысяч тредов вместо корутинов, не получится. А сам говорил что корутины легковесные треды. А в моем понимании корутины не треды, они пул тредов использует, так же как мы создаем треды в Executers и в них используем сто тысяч Runnable. Доклад в целом понравился.
У меня такое чувство будто я в каком то сюрреализме... Где здесь речь отличная? Половина слов проглатывается, чмокает, картавит, интонация повышается в концах предложения. Это просто ад для моих ушей. Сам текст - молодец хороший.
Этот доклад идеален. Речь, последовательность в изложении, знания, все здесь есть
Ну про Речь я бы поспорил. А ещё с микрофоном у них беда.
Респект JetBarains, всегда шикарные докладчики
Спасибо, познавательно.
Прекрасный доклад!!!
Супер доклад!
Крутой доклад!
Огромное спасибо!
Шикарно рассказал. Все понятно. Спасибо огромное.
Спасибо!
Познавательно. Единственное, что давно не слышал так много "че" в течение часа..
Че за Чикатило на 58-ой минуте?
Супер, Геил Ботикер жжот!
Оу, ин рашин, итс эмейзинг.
Какой невоспитанный человек на 58 минуте! Мой зад подгорел немного.
Интересный доклад, много раз уже слышал, что корутины это не потоки, они очень "дешевые" с точки зрения памяти, но вот не очень остается понятным, если обьявить локальную переменную внутри блока корутины, то где выделиться под нее память, если корутина это не поток, и для нее не назначается стэк?
Для корутины создается специальный фрейм, содержащий все локальные переменные и стейт с информацией с какого места продолжать выполнение после очередной саспенд-операции. Планировщик берет из пула свободные потоки и дает им на исполнение корутины из очереди. А у корутин стартанувших IO-операции поток отбирает и ставит их в конец очереди ожидания. Как-то так.
на 41:54 сказал что в котлине НЕ STACKLESS корутины, хотя в остальных докладах говориться что они STACKLESS. Так все таки stackfull или stackless??
да почему все делают ошибку на тся ться?
Я 15 лет писал говнокод, потому что компилятор не мог это делать за меня 😁
Ощущение, что некоторые из задававших вопросы просто не понимают смысла корутины, отличия CPU-bound и IO-bound задачи, разницы в стоимости ожидающей завершения корутины и заблокированного потока.
А я не понимаю, зачем придумывать для фич языка и классов новые, невнятные названия из соображений не занятости другими языками. Ладно если требуется избежать коллизий с терминами Явы, тогда в этом есть смысл, но при чем здесь другие языки? Если Майкрософт первым назвал свой класс словом Task, разве означает это, что у них теперь на это название эксклюзивное право?
возможно хотели сделать однозначную трактовку
В другом докладе говорили что Task занят был уже чем то из жавы
37 мой минуте: попробуйте создать сто тысяч тредов вместо корутинов, не получится. А сам говорил что корутины легковесные треды. А в моем понимании корутины не треды, они пул тредов использует, так же как мы создаем треды в Executers и в них используем сто тысяч Runnable. Доклад в целом понравился.
когда начинаешь замечать его чавканье - дальше уже невозможно смотреть ))
У меня такое чувство будто я в каком то сюрреализме... Где здесь речь отличная? Половина слов проглатывается, чмокает, картавит, интонация повышается в концах предложения. Это просто ад для моих ушей. Сам текст - молодец хороший.
да хз, не какой это не ад для ушей, вы переборщили)
а доклад отличный