Форум: "Начинающим";
Текущий архив: 2009.06.07;
Скачать: [xml.tar.bz2];
ВнизПотоки Найти похожие ветки
← →
Iriss (2009-04-20 11:52) [0]Запускаю расчет кнопкой "Расчет", хочу, чтобы по нажатию кнопки "Прервать" расчет был убит, но не могу пока идет обработка метода нажатия кнопки "расчет" нажать кнопку "Прервать"
Кнопка зажатой остается
------------------------------------
Что я делаю:
Запускаю поток, в котором запускаю метод Run(Self);
который по иерархии вызывает нужный метод Calculate(), в котором производится расчет, который может зависать
← →
Palladin © (2009-04-20 11:54) [1]
> который по иерархии вызывает нужный метод Calculate(),
по какой еще иерархии?
← →
Iriss (2009-04-20 11:58) [2]упс, да, иерархии там нет. Ошибся)
Запускаю поток, в котором запускаю метод Run(Self);
который вызывает метод Calculate(), в котором производится расчет, который может зависать
← →
clickmaker © (2009-04-20 11:58) [3]> пока идет обработка метода нажатия кнопки "расчет" нажать
> кнопку "Прервать"
как выглядит расчет?
← →
Iriss (2009-04-20 11:59) [4]расчет представляет собой композицию подрасчетов, каждый из которых может зависать
← →
Palladin © (2009-04-20 12:01) [5]телепатор подсказывает, что все расчеты производятся в Synchronize
← →
Сергей М. © (2009-04-20 12:01) [6]
> Кнопка зажатой остается
Кто ее "зажал", кто посмел ?
Она ж не барышня, чтобы ее "зажимать"))
> Запускаю поток, в котором запускаю метод Run(Self);
Значит не в нем, раз у тебя кого-то там "зажало")
← →
clickmaker © (2009-04-20 12:02) [7]> расчет представляет собой композицию подрасчетов, каждый
> из которых может зависать
а почему он может зависать?
для справки: в потоке можно периодически проверять значение переменной Terminated, и если установлено, выходить из потока.
По нажатию же кнопки можно вызывать метод потока Terminate
← →
Iriss (2009-04-20 12:08) [8]так вот проблема и в том, что как только я нажимаю "Расчет", создается поток, в котором идет расчет,
но во время выполнения этого расчета я просто не могу нажать что-либо на форме (видно, что кнопка "Расчет" находится в нажатом состоянии) - в этом вся и проблема
← →
clickmaker © (2009-04-20 12:12) [9]> так вот проблема и в том
проблема в том, что не можешь здесь внятно описать процесс расчета.
Если "просто не могу нажать что-либо на форме", значит этот поток как-либо блокирует очередь сообщений главной формы.
← →
Сергей М. © (2009-04-20 12:14) [10]
> поток, в котором идет расчет
Значит не в нем, а в основном у тебя идет расчет !
См [5].
← →
clickmaker © (2009-04-20 12:18) [11]хм... еще одна жертва Архангельского? -)
← →
Ega23 © (2009-04-20 12:49) [12]
> еще одна жертва Архангельского? -)
Очень похоже...
← →
Anatoly Podgoretsky © (2009-04-20 12:53) [13]> Ega23 (20.04.2009 12:49:12) [12]
Никто так много не сделал для потокостроительства.
← →
Iriss (2009-04-22 18:30) [14]всем спасибо, решил
← →
Сергей М. © (2009-04-22 19:03) [15]Аминь
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.06.07;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.005 c