рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

КЛАСС THREAD И ИНТЕРФЕЙС RUNNABLE

КЛАСС THREAD И ИНТЕРФЕЙС RUNNABLE - раздел Программирование, Язык программирования Java Класс Thread И Интерфейс Runnable. Поток Thread Представляет Собой Отдельный ...

КЛАСС THREAD И ИНТЕРФЕЙС RUNNABLE. Поток thread представляет собой отдельный поток управления в пределах процесса.

Таким образом, у каждого потока есть начало, последовательность действий, текущее состояние и конец. Поток запускается с помощью вызова метода start класса Thread. Последовательность действий, выполняемых в рамках потока, задается в методе run. Подчеркнем, что метод run используется только для задания последовательности действий явно вызывать его не только не нужно, но и просто вредно. Поток заканчивается либо при завершении выполнения метода run, либо с помощью явных вызовов методов класса Thread stop или destroy. Возобновить работу завершенного потока невозможно.

Для временной приостановки работы потока с последующим возобновлением служат методы suspend, sleep и yeild. Обычно поток, приостановленный с помощью метода suspend, возобновляет работу посредством метода resume. Вызов метода sleep приводит к приостановке потока на заданное число миллисекунд. Вызов метода yeild означает добровольную уступку процессора другому потоку первоначальный поток остается готовым к выполнению.

Java-потоки обладают приоритетами. В спецификациях оговаривается, что Java-машина реализует вытесняющую многопотоковость. Это означает, что поток с большим приоритетом может прервать выполнение менее приоритетного потока. Однако, спецификации не требуют наличия разделения времени. Это значит, что для передачи управления потоку с тем же приоритетом, вообще говоря, требуются явные действия со стороны первоначального потока - вызов методов suspend, sleep или yeild . class my producer extends Thread int items to do my buffer the buffer my producer my buffer buf, int count super the buffer buf items to do count public void run while items to do 0 System.out.println producer to do items to do Integer item new Integer items to do items to do the buffer.insert item items to do- System.out.println producer exiting Этот пример содержит фрагмент одного из многочисленных вариантов решения задачи производитель потребитель. Он заимствован из письма, которое написал Mark Tillotson в группу сетевых новостей comp.lang.java. Данный производитель помещает в буфер квадраты целых чисел. 1 class SomethingToRun extends BaseRunner implements Runnable 2 private Thread aThread 3 public void run выполняемые действия 4 5 SomethingToRun 6 aThread new Thread this 7 aTread.start 8 9 В приведенном простом примере класс my producer является наследником класса Thread, что делает его потоком с последовательностью действий, заданной методом run. В реальных программах, как правило, объект должен наследовать у какого-либо предшественника содержательные свойства, а возможность параллельного выполнения ему предоставляется интерфейсом Runnable.

Этот интерфейс содержит единственный метод - run. В строке 6 создается новый поток.

Аргументом конструктора является объект класса SomethingToRun, а, значит, последовательность выполняемых действий потока будет определяться методом run этого класса.

Вызов метода start в строке 7 ставит поток в очередь готовых для выполнения.

– Конец работы –

Эта тема принадлежит разделу:

Язык программирования Java

И тем не менее, уже довольно длительная история развития персональных компьютеров не знала ничего, подобного феномену Java. Что изменилось в мире в… Он стал доступен миллионам людей, далеких от технических проблем. Число пользователей Интернет по порядку величины уже не отличается от числа пользователей персональных компьютеров и…

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: КЛАСС THREAD И ИНТЕРФЕЙС RUNNABLE

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Мобильность Java
Мобильность Java. Язык программирования С является мобильным. Это нужно понимать в том смысле, что имеется принципиальная возможность переноса программ C на различные платформы. Однак

ОБЪЕКТНАЯ МОДЕЛЬ ЯЗЫКА JAVA
ОБЪЕКТНАЯ МОДЕЛЬ ЯЗЫКА JAVA. Когда говорят об объектно-ориентированном языке программирования, предполагают поддержку трех механизмов инкапсуляция наследование полиморфизм. Инкапсуляция и наследова

НАСЛЕДОВАНИЕ. Интерфейсы
НАСЛЕДОВАНИЕ. Интерфейсы. Модель наследования в языке Java существенно отличается от модели C . Во-первых, в Java нет множественного наследования. Таким образом, для каждого дочернего класса

ЖИЗНЕННЫЙ ЦИКЛ ОБЪЕКТА
ЖИЗНЕННЫЙ ЦИКЛ ОБЪЕКТА. Объекты создаются с помощью оператора new. Инициализация объекта производится с помощью соответствующего конструктора. Эти операции разделить нельзя - за new всегда с

Массивы в Java
Массивы в Java. В языке Java присутствуют массивы. Эти массивы типизированы. Декларация Point myPoints описывает переменную myPoints как массив объектов типа Point. Завести массив определенного раз

СРЕДСТВА СИНХРОНИЗАЦИИ ПОТОКОВ
СРЕДСТВА СИНХРОНИЗАЦИИ ПОТОКОВ. Как и во всякой многопроцессной или многопотоковой среде, в Java существует проблема синхронизации доступа к разделяемым ресурсам. Примером такого ресурса явл

Замещающие классы
Замещающие классы. Очень часто в наших приложениях вместо базовых типов переменных мы будем использовать объекты встроенных классов, которые называются замещающими классами wrapper classes. Ниже мы

Другие встроенные классы
Другие встроенные классы. Среди других встроенных классов отметим класс Math, предназначенный для выполнения математических операций, таких как вычисление синуса, косинуса и тангенса. Предус

Библиотека классов java.io
Библиотека классов java.io. В библиотеке классов java.io собраны классы, имеющие отношение к вводу и выводу данных через потоки. С использованием этих классов можно работать не только с пото

ТЕХНОЛОГИЧЕСКИЙ ЦИКЛ ОБРАБОТКИ JAVA-ПРОГРАММ
ТЕХНОЛОГИЧЕСКИЙ ЦИКЛ ОБРАБОТКИ JAVA-ПРОГРАММ. Технологический цикл подготовки, трансляции, редактирования внешних связей, тестирования, отладки и выполнения Java-программ тот же, что и для других и

СИСТЕМА КОМАНД JAVA-МАШИНЫ
СИСТЕМА КОМАНД JAVA-МАШИНЫ. проектировались таким образом, чтобы всячески способствовать компактификации кода. С другой стороны, формат команд Java-машины довольно прост обычно команды не имеют опе

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги