Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопрос по использованию потоков. / 11 сообщений из 11, страница 1 из 1
31.05.2006, 17:43
    #33764235
Igor Gryb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
Привет всем.
Подскажыте как мне езнать в програме когда
поток закончил работать.
Тоисть мне нужно по окончание роботы потока
сделать определенные действия... Как ?

Заранее спасибо..

извините за плохой русский.
...
Рейтинг: 0 / 0
31.05.2006, 17:54
    #33764271
Pitbull terrier
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
вызвать у экземпляра потока метод join()
тогда текущий поток будет приостановлен до выполнения потока, к которому он присоединился
...
Рейтинг: 0 / 0
31.05.2006, 17:58
    #33764293
Igor Gryb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
мне надо чтобы основной поток работал...
но когда тот поток что я создал закончил работу
вызвалась функция головного потока...

у Delphi такая возможность есть..
я начинаю програмировать на Java и мне ето надо....
...
Рейтинг: 0 / 0
31.05.2006, 18:05
    #33764312
Pitbull terrier
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
можно проверять isAlive, как сдохнет - дергайте свою ф-цию
...
Рейтинг: 0 / 0
31.05.2006, 18:07
    #33764320
Sarin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
Передать в объект который будет пахать в потоке ссылку на вызывающий объект.

Что-то типа

Код: plaintext
MyRunnable r =  new  MyRunnable( this );
...
Рейтинг: 0 / 0
31.05.2006, 18:10
    #33764326
Sarin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
Недоговорил. Так вот объект который грузится в поток должен иметь соответствующий конструктор и соответствующее поле которое будет хранить ссылку. Соответственно последней строкой метода run должен стать стать вызов соответствующего метода запускающего потока.
...
Рейтинг: 0 / 0
31.05.2006, 18:14
    #33764334
Pitbull terrier
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
SarinНедоговорил. Так вот объект который грузится в поток должен иметь соответствующий конструктор и соответствующее поле которое будет хранить ссылку. Соответственно последней строкой метода run должен стать стать вызов соответствующего метода запускающего потока.

тогда этот код будет вызван из дочернего потока, а афтару надо вызвать функцию "головного потока" , т.е. чтобы flow поменялся

правда ведь, афтар? =)
...
Рейтинг: 0 / 0
31.05.2006, 18:20
    #33764343
Penkov Vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
описан обычный пример регистрации слушателя событий. по идее так и
надо делать


-----------------------------------
The Bat + My Gate

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
31.05.2006, 18:21
    #33764345
GlukOza
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
Я бы предложила вот так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
        Thread readThread =  new  Thread()
        {
             public   void  run()
            {
                 final  JFrame prBar =  new  ProgressBar("Зачекайте, будь-ласка, формуєся запит ...");
                prBar.setVisible(true);
                setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
                //  Тут твоя программа "пашет"
                EventQueue.invokeLater(
                    new  Runnable(){
                        public   void  run()
                       {
                           prBar.dispose();
                           setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
                        // Здесь поток закончил свою работу
                       }
                });
            }
        };
        readThread.start();

...
Рейтинг: 0 / 0
31.05.2006, 18:22
    #33764346
Pitbull terrier
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
Deadyописан обычный пример регистрации слушателя событий. по идее так и
надо делать


-----------------------------------
The Bat + My Gate

Posted via ActualForum NNTP Server 1.3

нет, если имеет значение в каком потоке выполняеть код
...
Рейтинг: 0 / 0
31.05.2006, 18:29
    #33764360
Власов Алексей
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по использованию потоков.
Igor Grybмне надо чтобы основной поток работал...
но когда тот поток что я создал закончил работу
вызвалась функция головного потока...

у Delphi такая возможность есть..
я начинаю програмировать на Java и мне ето надо....

Не уверен, что это есть в дельфи (точнее возможно там и есть похожее, но это реализовано через механизм Windows сообщений).

А вообще в точности как написано реализовать невозможно. Если головной поток работает, и в этот момент второй поток окончил работу, что должен делать головной поток ? прервать работу и срочно броситься выполнять нужную функцию? а как же стек, локальные переменные? и куда возвращаться по окончанию работы нужной функции?
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопрос по использованию потоков. / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]