Свързани публикации 'concurrency'


Кога трябва да използвам паралелно програмиране? Законът на Густафсон е обяснен
Оптимистична гледна точка към закона на Амдал В предишната ни статия разгледахме как можем да използваме закона на Амдал, за да определим кога е подходящо да използваме паралелно програмиране. Моля, прочетете Кога трябва да използвам паралелно програмиране? Законът на Амдал е обяснен преди да прочетете тази публикация Законът на Амдал предполага, че размерът на нашия проблем е фиксиран и като се има предвид по-бърза машина, нашата цел е да изпълним проблема по-бързо. В..

Едновременни банкови тегления в Pluscal и P
Толкова се забавлявах да си играя с TLA+ и Coyote (вижте най-новото ), че реших да продължа със сравняването на някои други инструменти за формални методи. Има редица проекти, излизащи от Microsoft Research, и отново можем да използваме проблем „Rosetta Stone“ (който аз свободно определям като нещо, което на теория е лесно за превод между различни езици, което ви позволява да се съсредоточите повече върху разликата в езиците, отколкото съдържанието на проблема). Ако сте експерт по P,..

Едновременно управление на състоянието в Go: Използване на Mutex за безопасност на нишки
Въведение Тъй като нашите Go програми стават все по-сложни, може да срещнем ситуации, в които трябва да работим със споделени данни в множество goroutines. Това може да доведе до условия на надпревара в данните, при които различни goroutines се опитват да получат достъп и да променят едни и същи данни едновременно, което води до непредвидимо поведение и потенциално неправилни резултати. За да избегнем подобни проблеми, ние използваме mutexes в Go за безопасен контрол на достъпа до..

Паралелност в C++ : Нишки и задачи
Стартиране на нишки с async В последния раздел видяхме как данните могат да се предават от работна нишка към родителската нишка с помощта на обещания и фючърси. Недостатък на подхода обещание-бъдеще обаче е, че е много тромаво (и включва много шаблонен код) да се предаде обещанието към функцията на нишката, използвайки препратка към rvalue и std::move . За простата задача за връщане на данни или изключения от работна нишка към родителската нишка обаче има по-прост и по-удобен начин с..

Паралелност в Python: Изчерпателно ръководство
Въведение Паралелността играе жизненоважна роля в съвременното разработване на софтуер, като позволява на програмите да се справят ефективно с множество задачи едновременно. Python, като многофункционален и динамичен език за програмиране, предлага няколко подхода за постигане на едновременност. В това изчерпателно ръководство ще проучим различни начини за внедряване на едновременност в Python, вариращи от примитиви на ниско ниво до библиотеки и рамки на по-високо ниво. До края на..

Безпроблемно укротяване на паралелността в Golang: Задълбочено потапяне в групите работници
Паралелността е мощна функция на Golang, която позволява на разработчиците да управляват ефективно множество задачи едновременно. Внедряването на работни пулове е един от най-честите случаи на употреба за едновременност. В тази статия ще разгледаме концепцията за работни групи в Golang, ще обсъдим ползите от тях и ще ви преведем през процеса на внедряване на такъв в следващия ви Go проект. Какво е група работници? Работният пул е модел за едновременност, съставен от определен брой..

Многопоточност и паралелност в Python
Python е популярен език за програмиране, който е известен със своята простота, четливост и гъвкавост. Една от силните му страни е поддръжката му за едновременност и многонишковост, което позволява на разработчиците да пишат програми, които могат да изпълняват множество задачи едновременно. В този урок ще изследваме многонишковостта и паралелността в Python, включително как да създаваме и управляваме нишки, да синхронизираме данни между нишки и да се справяме с често срещани проблеми,..