Немного про потоки java

Добавлено пользователем 11.01.2016

java-потокиПоток(thread) является путем программного выполнения. Большое количество программ, разработанных сегодня, могут запускаться одним потоком. Проблемы возникают, когда несколько действий или событий должны быть реализованы в одно время. Например, программа не может рисовать картинку, пока происходит выполнение чтения нажатия клавиш. Программа уделяет всё своё внимание клавиатуре, именно поэтому отсутствует возможность обработки другого события в это же самое время. Идеальное решение этой проблемы будет служить возможность выполнять два или более раздела программы одновременно. Только потоки помогут это сделать.

Различные многопоточные приложения позволяют запускать многие потоки java в рамках одной программы. Многопоточность означает, что несколько заданий из одного приложения могут выполняться в то же самое время. Хотя это не будет тем же самым, если запустить программу дважды и определить, что несколько строк кода могут быть выполнены одновременно. В таком случае, операционная система производит обработку двух программ раздельно, в виде отдельных процессов. В программе Unix, разветвляющий(forking) процесс будет создавать дочерний процесс, при этом используя разное адресное пространство для кода и данных.

Наряду с этим, fork() создаёт достаточно много проблем в операционной системе, это повлечет за собой возникновение интенсивной нагрузки на процессор. Запуская поток, эффективный путь реализации будет создан при распределении исходного пространства данных родителя. Такая идея совместного использования данных является очень выгодной.

Похожие посты:

Многопоточность в Java
Новейшая история Java
Основные особенности Java