Уроки Java для профессионалов | #5 - Работа с потоками данных (Threads)

  Рет қаралды 62,090

Гоша Дударь

Гоша Дударь

6 жыл бұрын

Потоки это важная часть языка Java. Благодаря потокам мы можем распределять данные между собой и выполнять их по-очереди. В этом уроке мы научимся работать с потоками, а также узнаем что они из себя представляют.
Урок на itProger: itproger.com/course/java-inte...
✔ Основной сайт: itproger.com/
✔ Конструктор сайтов: crafty.site/
✔ -------------
Группа Вк - prog_life
Группа FaceBook - goo.gl/XW0aaP
Instagram: / gosha_dudar
Telegram: t.me/itProger_official
Twitter - / goshadudar
- Уроки от #GoshaDudar 👨🏼‍💻
- Все уроки по хештегу #GoshaJavaProfi

Пікірлер: 83
@buratino9148
@buratino9148 6 жыл бұрын
Отлично. Совершенно понятно объяснил. Спасибо.
@artjomeniko
@artjomeniko Жыл бұрын
Спасибо! Хорошо объяснил!
@user-ws8ho2ew9l
@user-ws8ho2ew9l 3 ай бұрын
отличное объяснение
@frx1692
@frx1692 4 жыл бұрын
sout "Люблю твои уроки :)"
@user-fu8cl4tk3x
@user-fu8cl4tk3x 5 жыл бұрын
Мне нравятся уроки, спасибо!!!
@aptems1438
@aptems1438 3 жыл бұрын
Что с run, что с start результат одинаковый в бесплатной идее. В Eclipse результат как у автора.
@soknight
@soknight 5 жыл бұрын
0:44 - Программируем в Ворде =)
@SlavikUkraine
@SlavikUkraine 3 жыл бұрын
На Java можно программировать даже в блокноте )
@_ZHONG_XIN_NA_
@_ZHONG_XIN_NA_ 2 жыл бұрын
@@SlavikUkraine в стандартном мессенджере на кнопочном телефоне
@AnnaIsHere
@AnnaIsHere 4 жыл бұрын
Лаконично, отлично! Пока не понятно, почему запускаем одно и то же действие в разных потоках, но хотя бы понятно, как создавать потоки! Умеешь выделять главное!
@SergeySvotin
@SergeySvotin 3 жыл бұрын
Так потому что потоки придуманы для того, чтоб разные действия делать одновременно, это просто пример с одинаковыми, чтоб не заморачиваться
@user-cv3nd2ls3y
@user-cv3nd2ls3y 21 күн бұрын
какие успехи
@user-gb7kl5bw3e
@user-gb7kl5bw3e 2 жыл бұрын
napisal kod takzhe no u menya rabotaet kak run method v chem problema?
@ServerPlayer-chanell
@ServerPlayer-chanell 6 жыл бұрын
можеш снять видео про класс Exchanger (для обмена даными между потоками)
@AngrySerezha
@AngrySerezha 5 жыл бұрын
я думал это на много сложнее... при слове "поток" бросало в дрожь, не мог понять че откуда...а сейчас посмотрел, повторил... вроде и ничего сложного. Спасибо!
@SergeySvotin
@SergeySvotin 3 жыл бұрын
Просто знать недостаточно, нужно уметь применять
@sexol1235
@sexol1235 6 жыл бұрын
Наконец то углубление знаний)
@antonmaurer8734
@antonmaurer8734 6 жыл бұрын
sexol123 видео кликбейт, тоеть это не для профессионалов, а для новичков
@sexol1235
@sexol1235 6 жыл бұрын
Anton Maurer один фиг лучше чем разбор банальных конструкций языка, которых уже овер дофига
@SergeySvotin
@SergeySvotin 3 жыл бұрын
@@antonmaurer8734 ну, потоки вроде как считаются уже углубленным курсом, все-таки не синтаксис, но, конечно, в таком виде это не для профессионалов
@awggeez
@awggeez 4 жыл бұрын
Только меня волнует вопрос: класс SomeThread наследуется от класса Thread, который мы даже не объявили. Это что, встроенный класс или что? И ещё: Если мы не объявляем приватность класса, то ему автоматом дается public? Плиз ответь автор)))
@GIMinds
@GIMinds 3 жыл бұрын
Класс Thread не нужно объявлять, как и интерфейс Runnable. И если мы не объявляем модификатор доступа, по ему автоматом дается default.
@slavaisusu6628
@slavaisusu6628 4 жыл бұрын
что будет если использовать больше потоков чем ядер на процессоре? будет ошибка, или лишние потоки будут выполнятся поочередно в других ядрах?
@merge-conflict
@merge-conflict 4 жыл бұрын
ошибки не будет, они будут поочередно выполнятся как вы и сказали
@SlavikUkraine
@SlavikUkraine 3 жыл бұрын
Один процессор не выполняет лишь один поток. Можно создать несколько потоков на одном процессоре , просто он будет постоянно переключаться между ними. Т.е. они будут приостанавливаться, давая возможность выполняться другим потокам
@user-df7vz1ip9k
@user-df7vz1ip9k 6 жыл бұрын
Сделала вроде все как в видео, а в итоге числа выводятся от 0 до 9 и потом снова от 0 до 9, я так поняла нет поточности, не понимаю почему у меня не получилось, посмотри пожалуйста class SomeThread extends Thread{ public void run(){ for(int a=0; a
@BoostBrainCourse
@BoostBrainCourse 6 жыл бұрын
Пока вы запускаете второй поток(это очень недешевая операция), первый поток успевает отработать. Вставьте Thread.sleep(1000); в цикл. Тогда будет видна параллельность исполнения.
@user-hh1vr2lw7v
@user-hh1vr2lw7v 5 жыл бұрын
Попробуй в цикле метода run добавить Thread.sleep(1000); скорее всего у тебя, пока создается новый поток, старый успевает закончиться
@amanturakylbekov9374
@amanturakylbekov9374 6 жыл бұрын
Выпустите ролик про flutter? Пж
@amylouis7750
@amylouis7750 6 жыл бұрын
у меня нихрена не получилось в консоль дает 0 до 9 и еще раз 0 до 9 и это в том случае когда вызываешь метод start ( );
@user-gh3gx8od7y
@user-gh3gx8od7y 4 жыл бұрын
у меня тоже самое, вроде и старт, но выдает как ран. Возможно это из-за того, что работаю на старом буке - одноядерный процессор.
@ibaevzz
@ibaevzz 4 жыл бұрын
@@user-gh3gx8od7y скорее всего из-за этого
@ibaevzz
@ibaevzz 4 жыл бұрын
@@user-gh3gx8od7y учился по книге, там показывают что код выполнился так, а у меня ахинея какая-то. Только потом заметил примечание что может зависеть от операционной системы(вытесняющая многозадачность в одних, у других по другому) и от процессора тоже
@AnnaIsHere
@AnnaIsHere 4 жыл бұрын
@@user-gh3gx8od7y, Сначала была та же ерунда. Попробовала цикл сделать от 0 до 100 и тогда стал проявляться эффект.
@isanyoc
@isanyoc 4 жыл бұрын
У меня тоже не идет многопоточность. у меня 8 ядер.
@arenmkhoyan
@arenmkhoyan 6 жыл бұрын
Сделайте видео о том какой БД выбрать для сайта
@segreiulanov6057
@segreiulanov6057 6 жыл бұрын
Aren Tv почему вас sql не устраивает?
@segreiulanov6057
@segreiulanov6057 6 жыл бұрын
А тебя сервер на Java написан?
@arenmkhoyan
@arenmkhoyan 6 жыл бұрын
Cegrei Ulanov у меня нет сервера
@segreiulanov6057
@segreiulanov6057 6 жыл бұрын
Aren Tv вам нужна оптимизация sql , если уже сегодня не выдерживает ста запросов в секунду
@BoostBrainCourse
@BoostBrainCourse 6 жыл бұрын
Если вы используете Java, то советую использовать JPA и Hibernate. С использованием этих технологий можно легко переходить с одной SQL БД на другую. Но если советовать с ходу, то берите PostgreSQL.
@TheOne-lc2fz
@TheOne-lc2fz 4 жыл бұрын
Нотка юмора: голос дударя похож на голос любителя пепси колы(дима михно)
@user-fw4qi2jv6l
@user-fw4qi2jv6l 4 жыл бұрын
фиаско у меня настолько слабый проц что он не вывозит 4:30
@flatmapper
@flatmapper 5 жыл бұрын
это не потоки ДАННЫХ, а просто потоки, мистер профессионал
@maksimvolkov8892
@maksimvolkov8892 4 жыл бұрын
Я бы назвал это нитями, а не потоками. Так они и называются в оригинале. Слово потоки скорее подходит к потокам ввода и вывода.
@SergeySvotin
@SergeySvotin 3 жыл бұрын
@@maksimvolkov8892 теперь уже все, как когда-то перевели - так и используют
@fio6951
@fio6951 3 жыл бұрын
Программирование потоков для младшей ясельной группы?
@SergeySvotin
@SergeySvotin 3 жыл бұрын
Ну, да, это тупо самое основное и самые плоские и тупые примеры. Это же можно прочитать в Идее, если открыть класс потоков
@zedteamlyrics8421
@zedteamlyrics8421 4 жыл бұрын
тобишь это тобишь потоки тобишь
@BoostBrainCourse
@BoostBrainCourse 6 жыл бұрын
Георгий, вы случайно не смотрели мой урок - kzbin.info/www/bejne/n6iqZKdoh9CiarM ? Очень похоже получилось. Но обращаю внимание, что не стоит использовать голые Thread. Лучше использовать ExecutorService, это удобнее и безопаснее.
@evgeniydubovik3559
@evgeniydubovik3559 5 жыл бұрын
пробежался по твоему видео , тебя слушать только под героином можно
@BoostBrainCourse
@BoostBrainCourse 4 жыл бұрын
@@evgeniydubovik3559 Это не страшно, со временем пройдет.
@lovingguardiansofharmony
@lovingguardiansofharmony 2 жыл бұрын
Интересно у меня вышло почему то два потока, при чём не вперемешку. Не знаю почему?
@vovafan
@vovafan 4 ай бұрын
Потому что Гоша спрятал код внизу на 8.45
@MrGreen-si5wl
@MrGreen-si5wl 4 жыл бұрын
5:07 10 первых чисел от 0 до 9
@ed_sh
@ed_sh 2 жыл бұрын
Маркусу Персону следовало посмотреть это видео
@_ZHONG_XIN_NA_
@_ZHONG_XIN_NA_ 2 жыл бұрын
Неа, если ты имел в виду то, что майнкрафт работает медленно, то тут дело в другом. Майнкрафт - игра очень большая и сложная. И язык программирования выбрали, которой не очень подходит под геймдев. Майнкрафт работал бы в сто раз быстрее, если б был бы написан на плюсах. Работал бы в сто раз по сто раз быстрее, если написан был был на си(хотя эта задача для мазохистов, так как нет ООП). Работал бы в сто раз, по сто раз, по сто раз быстрее, если б был бы написан хотя бы на 10% на ассемблере. А если полностью на нем, то в сто раз по сто раз по сто раз по сто раз быстрее. То есть, если на джаве у тебя будет 30 фпс, то на плюсах - 3000. На си - 300000(триста тысяч), в третьем случае - 30000000(тридцать миллионов), в четвертом - 3000000000(три миллиарда) фпс. И это только предположения.
@albertchubakov7120
@albertchubakov7120 6 жыл бұрын
я думал тут хотя бы ee будет...)
@doodocina
@doodocina 3 жыл бұрын
ты уверен что это для профиссианалов? это на жуниора не тянет
@SergeySvotin
@SergeySvotin 3 жыл бұрын
Я думаю, что номинально это считается продвинутый уровень, да и вещь нужная, но в таком виде мало полезного, самая основа основ
@doodocina
@doodocina 3 жыл бұрын
@@SergeySvotin продвинутый != профиссианальный. я так понял ты имеешь ввиду тот уровень который не найти в документации :/
@SergeySvotin
@SergeySvotin 3 жыл бұрын
@@doodocina профЕссионалов, что значит "тот уровень, который не найти в документации"? Там нет потоков? Да и кому нужна документация на подобные мелочи, если можно прошерстить прилегающие классы в Идее, там все подробно закомментировано аннотациями
@doodocina
@doodocina 3 жыл бұрын
@@SergeySvotin вот именно что мелочи... видео необоснованно названо "для профЕссионалов" хотя по факту ничего из себя не представляет. видимо автор считает себя профЕссионалом зная эти вещи
@SergeySvotin
@SergeySvotin 3 жыл бұрын
@@doodocina если так подумать, то программиста от алкаша отличает как раз знание кучи таких мелочей) впрочем, видео так себе, это просто пересказ слайдов из лекции сбербанка, 1 в 1, ничего нового, никаких тонкостей.
@aqaforjuniors618
@aqaforjuniors618 2 жыл бұрын
чтобы норм рассказать о потоках нужно как миним 5 таких видео если не больше. По сути рассказ как создать поток и запустить. Тема освещена на 0.1%
@_ZHONG_XIN_NA_
@_ZHONG_XIN_NA_ 2 жыл бұрын
**0.01%
@tagirtagirov7210
@tagirtagirov7210 5 жыл бұрын
You explain poorly.
@m.rcotl.9386
@m.rcotl.9386 6 жыл бұрын
Это работает в классе main
@antonmaurer8734
@antonmaurer8734 6 жыл бұрын
m.r cot l. 'квадратноголовые' учат программирование, жесть
@sti3167
@sti3167 4 жыл бұрын
@@antonmaurer8734 Какая разница во что он играет? это что мешает ему быть таким же человеком как ты?
@user-iw3cf9qn2q
@user-iw3cf9qn2q 3 жыл бұрын
меин это не класс а метод
@user-is9rt7zv6k
@user-is9rt7zv6k 6 жыл бұрын
Для профессионалов потоки? Лол
@user-is9rt7zv6k
@user-is9rt7zv6k 6 жыл бұрын
Скорее потоки это для продвинутых новичков
@SamsoTvChannel
@SamsoTvChannel 3 жыл бұрын
то бишь дизлайк
@vovafan
@vovafan 4 ай бұрын
8.44???? Wtf
LOVE LETTER - POPPY PLAYTIME CHAPTER 3 | GH'S ANIMATION
00:15
A clash of kindness and indifference #shorts
00:17
Fabiosa Best Lifehacks
Рет қаралды 39 МЛН
路飞被小孩吓到了#海贼王#路飞
00:41
路飞与唐舞桐
Рет қаралды 66 МЛН
Java SE. Урок 31. Потоки ввода вывода (I/O)
17:17
Follow the white rabbit
Рет қаралды 79 М.
Выпуск 35. Как работает ForkJoinPool.
23:44
Изучаем Java
Рет қаралды 7 М.
Java. Многопоточность. Как устроить Deadlock.
14:39
Sergey Arkhipov Java Tutorials
Рет қаралды 9 М.
Варианты создания потоков (прокачанная Java)
21:06
Thread Pools in Java
18:04
Jakob Jenkov
Рет қаралды 64 М.
LOVE LETTER - POPPY PLAYTIME CHAPTER 3 | GH'S ANIMATION
00:15