Press "Enter" to skip to content

Goroutines — Go Lang Practical Programming Tutorial p.18


что происходит на всем добро пожаловать
другой язык программирования идти учебник
видео в этом видео, что мы собираемся
говорить о параллелизме или хотя бы
мы начнем говорить о
параллелизм в программировании go
язык теперь сначала, что мы должны говорить
о том, что такое параллелизм
потому что это может быть своего рода запутанным
поэтому параллелизм не параллельно,
как вы думаете об этом
параллелизм как дело с
несколько вещей в любой момент времени
в то время как параллельно параллелизм делает
несколько вещей в любой момент, поэтому для
Пример параллелизма подобен рассмотрению
ваш, как генеральный директор компании, которую вы
написав общесистемный меморандум, но
электронные письма поступают, вы отвечаете на электронные письма
может быть, кто-то придет к вам и
задает быстрый вопрос о том, что вы делаете паузу
записку, и вы отвечаете на этот вопрос и
то вы возвращаетесь к памятке что-то
как будто вы делаете эти вещи
одновременно, таким образом, когда это
человек приходит к вам, они не делают
должны любить стоять там, пока вы не
завершено запиской обязательно или
что-то подобное в нашем случае
с нашим веб — приложение , мы проводим много
время, когда мы сидим там, мы отправляем
из запросов, которые мы ожидаем
просьбы вернуться, это много
время это как 50 — 75 миллисекунд
умножить на каждую карту сайта
что мы посещаем, и они просто держат
добавив , тогда как мы действительно могли бы
пока мы ждем чего-то
сделайте ответ, который мы действительно можем отправить
выдать другой запрос или дождаться этого
также, чтобы дать ответ от звука на
другие шансы на запрос — мы можем
вероятно, рассылаем все наши запросы в 75
миллисекунды, так что это
параллелизм, так что идите так, как мы делаем
параллелизм заключается в том, чтобы
мы используем рутину , просто вы просто
type go Я понятия не имею, где это, но
в любом случае, перед функцией
позвоните, давайте просто сделаем быстрый пример
чтобы проиллюстрировать это, поэтому я просто собираюсь
скажем, основной пакет, а потом мы пойдем
впереди, и только мы собираемся сделать пару
импорт, который мы будем импортировать, и
формат, чтобы распечатать информацию, а затем
скажем, у нас есть функция, которая говорит
какую бы строку мы ни проходили, и все это
он делает это как раз говорит , что все , так что в этом
и на самом деле сделаем это немного
более сложным, так скажем
итерации, как говорится, вещь вроде
три раза, так скажем для I : равно
но в то время как I меньше трех, а затем
Я увеличиваю длину, давайте просто отформатируем точную печать
линии, а затем также давайте двигаться вперед и
сделать фильеру столичной пора время диеты сна
раз миллисекунды 100 так хорошо прохладное I
означает, что это должно быть совершенно ясно, как
что происходит в этой функции, так что
надеюсь, теперь вы поймете, давайте сделаем это
идти вперед и делать наши основные, а затем наши
основная функция
если нам понравится, скажем, мы собираемся
скажем две вещи, скажем, мы собираемся сказать
скажите, эй, а потом скажи там, так что давай сэкономим
которые приходят сюда, а затем идут бежать идти идти
и мы видим эй эй эй
там там все вроде бегало
вы знаете параллельно или нет
параллельно
линейно, поэтому, когда мы добрались до
это запустило каждую итерацию
прежде чем он добрался до этой линии, вместо этого
что, если мы обратим одну из этих вещей
в горутин
например, давайте просто преобразуем первый
один к рутине, поэтому мы просто бросаем
утверждение призрака прямо перед
функция это так идти рутина
и идти, как легкая нить
хорошо, так что собираюсь начать говорить, эй в
нить для нас, и вот и все.
вы должны это сделать, так что давайте пойдем
впереди и бежать, что очень быстро и здесь
мы можем видеть, что на этот раз все нормально
на самом деле сказал там, прежде чем я не буду
обязательно я не думаю, что это не будет
обязательно всегда это делать, но в любом случае это
возможно, возможно, это было бы для
Причина , почему я собираюсь объяснить в данный момент так
что, если бы мы сделали обе эти области
поэтому мы говорим, иди, скажи, эй, скажи, что так
что, если мы сделаем так ,
что вы будете делать так, давайте
идти вперед и запускать его очень быстро и
вдруг мы ничего не видим, что если что, если
мы сказали
например, скажем, мы говорим эй, а потом идем
скажем, так что первый пример, который мы сделали
было сказано, эй, а потом мы только что сказали
там на этот раз я хочу, чтобы мы сделали
сказать, эй, а потом сделать ход сказать
там, что будет здесь , это
просто говорит, эй, эй, эй прямо и так и
если мы сделали снова оба эти идут
рутин возгласы , если мы сделали их оба идут
Подпрограммы где мы не получим ничего так
что здесь происходит
а рутина идти только вид
запущен, но он собирается запустить
одновременно нет ничего, что
говорит, что это абсолютно необходимо закончить
правильно, если ваша программа заканчивается раньше
рутинная процедура заканчивается, это
он не блокирует, так что просто не собираюсь
что бы мы ни делали, хотя мы и попросили
эти вещи, чтобы бежать, они просто не
сделав это, поэтому, когда мы сказали,
скажите, эй, а потом хорошо там говорят
требует требуется , чтобы закончить так что это было
определенно собираюсь закончить, и именно поэтому
это удалось запустить, а затем я
догадываюсь, что запуск этого
одновременное заняло немного больше времени
и тогда мы действительно дошли до этого момента
и вот почему гордость есть
первый не положительный, это просто мой
предположим, поэтому, скажем так, вы сказали, что пошли
поздороваться идут говорят , что мы можем вид
иллюстрируют, что это единственная проблема
что у нас есть время, а не
диета времени сна, давайте просто сделаем вторую
за исключением здесь, и мы можем запустить
это и, конечно же, все это работает
ждет второй, на самом деле он просто ждет
для второго права, потому что это
просто запустите процедуры, чтобы эти запущенные
начал это на самом деле не ждет
эти, а затем он спит на секунду
прежде чем программа закончится так или иначе так
это просто очень быстро
базовый пример подпрограмм go, но
Конечно, вы, вероятно,
интересно, я имею в виду, что все в порядке
и денди и как простой пример
где вы просто добавляете сон на
конец, и это все, что вам нужно сделать, но
на практике это не очень хорошая идея
как вы не хотите
ручка для ваших ходовых процедур до свидания
думая про себя, как долго
если они берут, а потом вы знаете
возможно, я просто добавлю немного больше времени
и тогда это хорошо, потому что ты
собираюсь оставить время на столе так, конечно
есть лучший путь, и есть
и так в следующем учебнике, что мы
действительно говорить о том, как вы можете
фактически синхронизировать эти процедуры go
дождаться их завершения и
в основном в основном ждут их
полностью, не оставляя время на
таблицу, используя что-то произвольное и
хаки, как время не спать для некоторых
сколько времени, так или иначе, вот что
мы будем иметь дело в следующем
Если у вас есть вопросы, комментарии
заботится о том, что вы можете оставить
их ниже в противном случае я увижу вас в
следующий учебник
Please follow and like us:

Be First to Comment

Добавить комментарий