Подробное руководство по программированию на Java

viagra | Knowing the rules, it is easier to beat online blackjack. Смотрим: https://welspro.com/

Многопоточность


Многопоточность
Многопоточность...
Многопоточность
Многопоточность Наверное, сегодня уже нет необходимости объяснять, что такое многопоточность. Все современные операционные системы, такие как Windows 95, Windows NT, OS/2 или UNIX способны...
Процессы потоки и приоритеты
Процессы, потоки и приоритеты...
Процессы потоки и приоритеты
Процессы, потоки и приоритеты Прежде чем приступить к разговору о многопоточности, следует уточнить некоторые термины. Обычно в любой многопоточной операционной системе выделяют такие об...
Процесс
Процесс Процесс (process) - это объект, который создается операционной системой, когда пользователь запускает приложение. Процессу выделяется отдельное адресное пространство, причем это...
Поток
Поток Для каждого процесса операционная система создает один главный поток (thread ), который является потоком выполняющихся по очереди команд центрального процессора. При необходимости г...
Приоритеты потоков в приложениях Java
Приоритеты потоков в приложениях Java Если процесс создал несколько потоков, то все они выполняются параллельно, причем время центрального процессора (или нескольких центральных процессоро...
Реализация многопоточности в Java
Реализация многопоточности в Java...
Реализация многопоточности в Java
Реализация многопоточности в Java должны воспользоваться классом java.lang.Thread. В этом классе определены все методы, необходимые для создания потоков, управления их состоянием и синхр...
Методы класса Thread
Методы класса Thread В классе Thread определены три поля, несколько конструкторов и большое количество методов, предназначенных для работы с потоками. Ниже мы привели краткое описание поле...
Поля
Поля Три статических поля предназначены для назначения приоритетов потокам. NORM_PRIORITY Нормальный public final static int NORM_PRIORITY; MAX_PRIORITY Максимальный public final...
Конструкторы
Конструкторы Создание нового объекта Thread public Thread(); Создвание нового объекта Thread с указанием объекта, для которого будет вызываться метод run public Thread(Runnable target); Ана...
Методы
Методы activeCount Текущее количество активных потоков в группе, к которой принадлежит поток public static int activeCount(); checkAccess Текущему потоку разрешается изменять объе...
Создание дочернего класса на базе класса Thread
Создание дочернего класса на базе класса Thread Рассмотрим первый способ реализации многопоточности, основанный на наследовании от класса Thread. При использовании этого способа вы определ...
Реализация интерфейса Runnable
Реализация интерфейса Runnable Описанный выше способ создания потоков как объектов класса Thread или унаследованных от него классов кажется достаточнао естественным. Однако этот способ не е...
Многопоточность и анимация
Многопоточность и анимация...
Применение многопоточности для анимации
Применение многопоточности для анимации Одно из наиболее распространенных применений аплетов - это создание анимационных эффектов типа бегущей строки, мерцающих огней или аналогичных, пр...
Синхронизация потоков
Синхронизация потоков...
Синхронизация потоков
Синхронизация потоков Многопоточный режим работы открывает новые возможности для программистов, однако за эти возможности приходится расплачиваться усложнением процесса проектирования прил...
Синхронизация методов
Синхронизация методов Возможность синхронизации как бы встроена в каждый объект, создаваемый приложением Java. Для этого объекты снабжаются защелками, которые могут быть использованы для бл...
Блокировка потока
Блокировка потока Синхронизированный поток, определенный как метод типа synchronized, может переходить в заблокированное состояние автоматически при попытке обращения к ресурсу, занятому д...
Блокировка на заданный период времени
Блокировка на заданный период времени С помощью метода sleep можно заблокировать поток на заданный период времени: try { Thread.sleep(500); } catch (InterruptedException ee) { . . . } В да...
Временная приостановка и возобновление работы
Временная приостановка и возобновление работы Методы suspend и resume позволяют, соответственно, временно приостанавливать и возобновлять работу потока. В следующем фрагменте кода поток m_Re...
Ожидание извещения
Ожидание извещения Если вам нужно организовать взаимодействие потоков таким образом, чтобы один поток управлял работой другого или других потоков, вы можете воспользоваться методами wait,...
Ожидание завершения потока
Ожидание завершения потока С помощью метода join вы можете выполнять ожидание завершения работы потока, для которой этот метод вызван. Существует три определения метода join: public final...
Потокидемоны
Потоки-демоны...
Потокидемоны
Потоки-демоны Вызвав для потока метод setDaemon, вы превращаете обычную поток в поток-демон. Такой поток работает в фоновом режиме независимо от породившего его потока. Если поток-демон со...
Аплет Rectangles
Аплет Rectangles...
Аплет Rectangles
Аплет Rectangles В качестве примера многопоточного приложения мы приведем аплет Rectangles (Рисунок 1). Он создает три потока. Первый поток рисует в окне аплета прямоугольники случайного...
Рисунок 1 Окно аплета Rectangles
Рисунок 1. Окно аплета Rectangles Расположение прямоугольников и эллипсов также выбирается случайно....
Исходные тексты
Исходные тексты...
Исходные тексты аплета Rectangles
Исходные тексты аплета Rectangles Исходные тексты аплета Rectangles приведены в листинге 1....
Листинг 1
Листинг 1. Файл Rectangles,java import java.applet.*; import java.awt.*; public class Rectangles extends Applet { DrawRectangles m_DrawRectThread = null; DrawEllipse m_DrawEllipseThread = null...
Описание текстов
Описание текстов...
Описание исходных текстов аплета Rectangles
Описание исходных текстов аплета Rectangles В этом приложении мы создаем на базе класса Thread три класса. Первый из них предназначен для создания потока рисования прямоугольников, второй...
Поля класса Rectangles
Поля класса Rectangles В классе Rectangles мы определили три поля с именами m_DrawRectThread, m_DrawEllipseThread и m_NotifyTaskThread: DrawRectangles m_DrawRectThread = null; DrawEllipse m_D...
Метод start класса Rectangles
Метод start класса Rectangles Этот метод последовательно создает три потока и запускает их на выполнение: if(m_DrawRectThread == null) { m_DrawRectThread = new DrawRectangles(this); m_Dr...
Метод stop класса Rectangles
Метод stop класса Rectangles Когда пользователь покидает страницу сервера Web с аплетом, метод stop класса Rectangles последовательно останавливает gjnjrb рисования прямоугольников и эллипс...
Поля класса DrawRectangles
Поля класса DrawRectangles Класс DrawRectangles определен для потока рисования прямоугольников: class DrawRectangles extends Thread { . . . } В поле g класа хранится контекст отображения о...
Конструктор класса DrawRectangles
Конструктор класса DrawRectangles В качестве параметра конструктору передается ссылка на класс аплета. Конструктор использует эту ссылку для получения и сохранения в полях класса контекста...
Метод run класса DrawRectangles
Метод run класса DrawRectangles Программный код метода run работает в рамках отдельного потока. Он рисует в окне аплета закрашенные прямоугольники. Прямоугольники имеют случайные координаты...
Метод run класса DrawEllipse
Метод run класса DrawEllipse Класс DrawEllipse очень похож на только что рассмотренный класс DrawRectangles. Отличие есть только в финальном фрагменте метода run, который мы и рассмотрим....
Поля класса NotifyTask
Поля класса NotifyTask В классе NotifyTask мы определили одно поле STask класса Thread. Это поле которое хранит ссылку на поток, работой которого управляет данный класс: class NotifyTask ext...
Конструктор класса NotifyTask
Конструктор класса NotifyTask Конструктор класса NotifyTask записывает в поле STask ссылку на задачу рисования эллипсов: public NotifyTask(Thread SynchroTask) { STask = SynchroTask; }...
Метод run класса NotifyTask
Метод run класса NotifyTask Метод run класса NotifyTask периодически разблокирует поток рисования эллипсов, вызывая для этого метод notify в цилке с задержкой 30 миллисекунд. Обращение к о...








Начало    



Книжный магазин