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


Многопоточность 101
Многопоточность разбивает программу на многоуровневое выполнение, которое выполняется в течение разного времени. Это возможность управлять использованием более чем одним пользователем одновременно или даже управлять несколькими запросами одного и того же пользователя без необходимости иметь несколько копий программы, запущенной на компьютере. Преимущества: Лучшее общение Упрощение структуры программы Минимальное использование системных ресурсов Превосходная скорость отклика..

Процесс против потока: какой из них лучше справляется с задачами?
Неудивительно, почему так много программистов и инженеров изо всех сил пытаются решить, использовать ли потоки или процессы в своих приложениях. По этой причине я решил написать статью, в которой подробно расскажу об основных отличиях и преимуществах каждой из этих программных функций. Чтобы теория была менее скучной, я воспользуюсь реальным примером, на котором мы сможем вблизи увидеть, как работают потоки и процессы. В вычислениях есть два типа параллельного программирования:..

Pro RXJava - не подписывать наблюдаемое в конструкторе
import io.reactivex.Observable; import io.reactivex.functions.Consumer; // Don't use this. public class RXJavaNoobTip { public RXJavaNoobTip(Observable<String> observable) { observable.subscribe( new Consumer<String>() { @Override public void accept(String s) throws Exception { System. out .println(s); } }); } } В этом коде есть 2 проблемы: Метод деиниции отсутствует. Технически finalize то же самое, но его вызов не..

MT Strats: локальное сокращение потока
Последние несколько моих постов были посвящены некоторым особенностям Mana Engine. Я хотел уделить немного времени разговору о некоторых стратегиях, которые мы с Робом использовали для обеспечения безопасности потоков. Итак, здесь начинается то, что, как я надеюсь, станет серией постов под названием «Многопоточные стратегии» (или сокращенно MT Strats). В каждом посте будет стратегия, которую вы можете использовать для решения собственного многопоточного кода. Сначала я изложу некоторые..

Горутины
Как я упоминал в своем первом посте, я немного изучаю Go. Сегодня я столкнулся с горутинами, которые, по сути, представляют собой функции или методы, которые выполняются одновременно, в виде «потоков». Итак, если у нас есть (очень простой) код: func main() { go makeSureBothStatementsGetInThere() fmt.Println("We are executed concurrently.") } func makeSureBothStatementsGetInThere() { fmt.Println("We are executed concurrently.") } что произойдет, так это то,..

Параллельный JavaScript: разговор
Nordic.js 2016 * Абдулла Али - Безумный кузен - Многопоточный JavaScript - YouTube Абдулла Хасан поделился видео www.youtube.com Прежде всего, я хочу поблагодарить команду Nordic.js за гостеприимство, и я хочу поблагодарить каждого человека, которого я встретил до сих пор! Спасибо за поддержку и за отличную поддержку! Если вы посещали Nordic.js 2016 или смотрели прямую трансляцию, вы знаете, как я боролся с моей презентацией. Я..

Многопоточность в Rust с каналами MPSC (Multi-Producer, Single Consumer)
Исторически многопоточность всегда была палкой о двух концах. Это экономит много времени и ресурсов, ускоряя тяжелые вычисления (за счет распараллеливания их), но, с другой стороны, он может легко создать бесчисленное количество ситуаций непредсказуемого поведения, которые часто трудно воспроизвести, отладить или даже идентифицировать, прежде чем они фактически обрушат ваше приложение. Эти проблемы называются гонкой данных и возникают, когда по крайней мере две инструкции из разных..