Публикации по теме 'concurrency'


Совместные подпрограммы Python с async-await
async-await и гринлеты В этом посте мы рассмотрим использование совместных подпрограмм для обработки ввода-вывода с помощью asyncio и gevent . Переходим к оценке производительности и легкости написания. Мы также пытаемся решить проблему, ранее написанную на Gevent здесь , с помощью asyncio . В python3.5 внесено множество улучшений; была попытка поднять совместные подпрограммы из библиотек до основной функции языка, поддерживаемой зарезервированными ключевыми словами и доступной..

Go Concurrency 1.2 — Пакет синхронизации | Один раз и бассейн
Один раз Это тип, который внутренне использует примитивы синхронизации, чтобы гарантировать, что для переданной функции произойдет только один вызов. Примечание. Ему не важны переданные уникальные функции, а важен только вызов метода sync.Once.Do(f func()) . package main import ( "fmt" "sync" ) func main() { var counter int var once sync.Once for i := 0; i < 10; i++ { once.Do(func() { counter++ }) } fmt.Println(counter) } "Детская площадка"..

Язык программирования Go (Golang)
Go — лучший язык для создания масштабируемого и надежного программного обеспечения. Golang, созданный в 2009 году инженерами Google Робертом Гриземером, Робом Пайком и Кеном Томпсоном, выделяется как язык программирования, известный своим мастерством в создании параллельных и сетевых программных приложений. Черпая вдохновение из таких языков, как C, Pascal и Oberon, Golang, синтаксис которого напоминает C, включает в себя инновационные функции, которые облегчают создание безопасного и..

Параллелизм в Дарте
Параллелизм — это способность компьютерной программы или системы выполнять несколько задач одновременно или одновременно. В мире программирования параллелизм важен, потому что он позволяет разработчикам писать эффективное и быстро реагирующее программное обеспечение, которое может использовать преимущества современного оборудования с несколькими ядрами и процессорами. Dart — это язык программирования, разработанный Google, который используется для создания веб-приложений, мобильных,..

Модель параллелизма JavaScript и цикл событий
Стек вызовов Сначала давайте узнаем, что такое стек вызовов. Стек вызовов — это простая структура данных, которая записывает, где в коде мы находимся в данный момент. Поэтому, если мы входим в функцию, которая является вызовом функции, она помещается в стек вызовов. Когда мы возвращаемся из функции, она извлекается из стека. Давайте посмотрим на пример кода, чтобы понять стек вызовов: function multiply(x,y) { return x * y; } function squared(n) { return multiply(n,n)..

Параллельные горутины: обеспечение безопасности потоков с помощью каналов Go и мьютексов
Проснуться сегодня в 2 часа ночи оказалось на удивление продуктивным. Так здорово работать над проектами на работе, которые каждый день учат чему-то новому. Здесь, в этом блоге, я поделюсь интересной информацией о том, что я недавно позаботился в своем проекте — достижение параллельной логики потокобезопасности! Давай начнем! Постановка задачи Создайте 10 000 горутин, в которых каждая горутина генерирует срез из трех случайных целых чисел, и поставьте их все в одну очередь...

Параллелизм - что вы знаете о кешировании?
В своем стремлении понять, что это за чертовски volatile ключевое слово в C , я в конечном итоге выучил cache coherence . Я выучил это в колледже, но кто, черт возьми, это помнит. Вам может быть интересно, что? Подождите, вы поймете суть. ЦП развивались намного быстрее, чем хранилища. От самого медленного к самому быстрому порядку это disk, main memory, cache (L3-L2-L1 etc) and registers . Они составляют основу современной архитектуры быстрых процессоров. Эти хранилища обычно..