Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.07.2013, 09:48   #11
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

delete......

Последний раз редактировалось FleXik; 06.07.2013 в 10:34.
FleXik вне форума Ответить с цитированием
Старый 06.07.2013, 09:55   #12
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Эм..я думаю тебе стоит взглянуть на вложение.
Вложения
Тип файла: zip Lool.zip (216.0 Кб, 8 просмотров)
Кольша вне форума Ответить с цитированием
Старый 06.07.2013, 09:57   #13
Xo66um
Форумчанин
 
Регистрация: 11.05.2013
Сообщений: 154
По умолчанию

Кольша правильно сказал, т.к. если код будет выглядеть так
Код:
...
if not terminated then
...
то код проверит один раз, что поток не завершен, и будет работать сколько угодно.
А так:
Код:
while not terminated do
Создается цикл, по которому код проверяет, не завершен ли поток, и если не завершен - выполняет код между begin и end, иначе - игнорирует этот блок.

Если я правильно понял ваш спор
Xo66um вне форума Ответить с цитированием
Старый 06.07.2013, 10:00   #14
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Кольша, омг, только ты не понял смысла вообще! не ну что ты за человек, у тебя при while все время добавляется в Memo фраза "Looool", она будет добавлятся хоть 1 000 000 раз пока ты САМ софт не остановишь, если я сейчас сделаю у себя вместо if - while, то у меня будет генерировать 1 000 000 раз одни и те же числа пока я САМ не остановлю софт, внимательно почитай код Unit'а который я дал выше. И вообще тему не про это!
FleXik вне форума Ответить с цитированием
Старый 06.07.2013, 10:02   #15
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

хорошо, ща, погодите, залью видео чтобы всем стало понятно что случается если делать через while, ибо доказывать на словах можно сутками. и вопрос был вообще не про это, а про то почему не работает вообще кнопка СТОП в одном потоке но в другом потоке при ИДЕНТИЧНОМ коде работает!
FleXik вне форума Ответить с цитированием
Старый 06.07.2013, 10:04   #16
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Окей, тогда для начала просто проверь так:
Код:
begin
if not Terminated then
begin
Showmessage('Ya potok? ya srabotal');
end;
end;
И все.
Если не выдаст окошко дело в чем то другом.
Кольша вне форума Ответить с цитированием
Старый 06.07.2013, 10:06   #17
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Смотри обьясняю еще раз, есть 2 потока (2 разных юнита, 2 кнопки старт)

первый поток выполняет одно действие // кода одного из потоков дал выше
второй поток выполняет совсем другое действие

в том юните что выше все работает отлично, кнопка СТОП работает, в другом юните абсолютно такой же код потока, такое же использование только почему-то кнопка СТОП там не пашет! еще ждите видео по поводу while
FleXik вне форума Ответить с цитированием
Старый 06.07.2013, 10:08   #18
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Меня не покидает ощущения, что ты скопипастил код кнопки стоп, и она всегда останавливает один поток..
Кольша вне форума Ответить с цитированием
Старый 06.07.2013, 10:11   #19
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Кольша, качай и смотри видео про while

на видео видно что используя while , одни и те же числа выдает 1 000 000 раз, только если сам не нажму кнопку СТОП, а если делать через if то числа выдаст только 1 раз и сообщит что работа завершена!

Последний раз редактировалось FleXik; 06.07.2013 в 10:23.
FleXik вне форума Ответить с цитированием
Старый 06.07.2013, 10:13   #20
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

Цитата:
Сообщение от Кольша Посмотреть сообщение
Меня не покидает ощущения, что ты скопипастил код кнопки стоп, и она всегда останавливает один поток..
я не калека и для первой кнопки старт указано thread1 а для второй кнопки старт указано thread2 (я это 1000 раз уже проверял), я не первый софт пишу, просто иногда возникают мелкие проблемы и спрашиваю тут, так что не надо меня за нуба который первый раз Delphi включил считать.
FleXik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с потоками. Aleksandr Общие вопросы Delphi 9 12.03.2013 20:56
Управление потоками vandrouny Win Api 12 04.01.2011 03:52
Ошибка с потоками C# MyXa Общие вопросы .NET 3 25.08.2010 16:54
работа с потоками session Общие вопросы C/C++ 6 21.06.2010 17:13
Проблемы с потоками в С m9yt Общие вопросы C/C++ 4 14.04.2010 14:25