На этом слайде мы поговорим о многопоточности, рассмотрим несколько примеров, кода имеет смысл разделять задачу на потоки, а когда нет. На следующих слайдах мы напишем простой многопоточный сокет для сервера на языке Java
Дата отправки отчёта:
6 декабря 2018 г.
Задание выполнено: за
49 мин.
Чему научился:
Издержки многопоточности (см верхний скрин) Недоработки многопоточности (см. нижний скрин) з.ы. многопоточность полезна в супермаркетах, когда одновременно обслуживается несколько человек, чтобы не было застоя и лишней траты времени с продуктами перед выходом. многопоточность бесполезна, если нужно строгая последовательность, к примеру: чтобы одеться, надо встать, а чтобы встать, надо проснуться, а чтобы проснуться, надо уснуть, а чтобы уснуть, надо... и так далее.
Научился: Многопоточность в жизни это поезда, автобусы, самолёты если бы был всего лишь один поток (самолёт, автобус, поезд) то скорее всего никто никуда бы и уехать то не смог ;)
Однопоточность наверное можно представить как производства какого то продукта, в процессе которого нужно соблюдать строгую последовательность.
Научился: Различать когда имеет смысл разделять задачу на потоки, а когда нет.
Трудности: Помню в студенческие годы, после долгой сибирской зимы, хотелось ускорить приход весны, а громадные сугробы снега таяли не очень охотно. Мы разделяли сугробы на меньшие части (отдельные потоки) и наглядно был виден результат разделения процесса на потоки. В тоже время не тронутые сугробы ещё долгое время продолжали своё существование.
В программистскую фирму поступил срочный заказ на изготовление сложной программы требующей некой новой технологии Х. Однако в фирме всего один специалист, владеющий технологией Х. Поэтому распределение работы между
несколькими программистами не даст необходимого эффекта.