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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.09.2011, 01:11   #1
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,434
По умолчанию Поток в потоке

Доброго вреени суток:

Сотоит задачка:
поток #1 запускается и запускает поток #2
Поток 2 делает какое-то свое дело(отсчёт времени) и по достижению эфекта, посылает сообщение в поток #1, поток 1 обработывает это сообщение.

Как это реализовать?
Человек_Борща вне форума Ответить с цитированием
Старый 20.09.2011, 01:26   #2
SNUPY
Форумчанин
 
Регистрация: 15.02.2008
Сообщений: 621
По умолчанию

А в чем собственно сложность?
Помог? Ну так нажми на весы!
SNUPY вне форума Ответить с цитированием
Старый 20.09.2011, 02:23   #3
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,434
По умолчанию

общение потока 1 с потоком 2 и наоборот. Так чтобы без WaiForSingleObject обходиться...
Человек_Борща вне форума Ответить с цитированием
Старый 20.09.2011, 02:47   #4
SNUPY
Форумчанин
 
Регистрация: 15.02.2008
Сообщений: 621
По умолчанию

synchronize?
Помог? Ну так нажми на весы!
SNUPY вне форума Ответить с цитированием
Старый 20.09.2011, 02:51   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,434
По умолчанию

Как оно может быть из 1-го во 2-ой и из 2-го в 1-ый потоки?
Человек_Борща вне форума Ответить с цитированием
Старый 20.09.2011, 03:03   #6
SNUPY
Форумчанин
 
Регистрация: 15.02.2008
Сообщений: 621
По умолчанию

я не могу понять в чем сложность то =(
Тут просто надо подумать как можно избежать малой кровью чтения/записи одного участка памяти разными нитями (а это уже отдельный вопрос, even-ы, критические секции, семафоры, через синхнонайз или прочие извращения).... Либо я не до конца вижу все проблематику задачи. Но в любом случаи для полноты ясности задачи нужно слышать все постановку задачи (можно более тривиальной но подобной).
Помог? Ну так нажми на весы!
SNUPY вне форума Ответить с цитированием
Старый 20.09.2011, 13:10   #7
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Поток 1 должен тупо ждать сигнала от 2 или выполняться в это время?
пыщь
JTG вне форума Ответить с цитированием
Старый 20.09.2011, 21:20   #8
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,434
По умолчанию

нет...
Поток 1 стартует.. делает что-то, запускает поток 2....
Поток 1 и поток 2 работают одновременно(каждоый свою работу делает).
Но как-только поток 2 выполнил свою работу, он извещает об этом поток 1, а сам закрывается...
Поток 1, получив сообщение от 2-го что-то делает..
Человек_Борща вне форума Ответить с цитированием
Старый 20.09.2011, 21:29   #9
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Защищенная на чтение/запись переменная в месте доступном обоим потокам. Поток 2 устанавливает в ней признак завершения, а поток 1 периодически проверяет ее значение
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 20.09.2011, 21:30   #10
SNUPY
Форумчанин
 
Регистрация: 15.02.2008
Сообщений: 621
По умолчанию

Код:
Поток 1, получив сообщение от 2-го что-то делает..
А пока от второго потока нет сообщений что делает первый? ждет?
Помог? Ну так нажми на весы!
SNUPY вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
событие в потоке filin2323 C# (си шарп) 4 20.07.2011 22:14
Поток. Не получается создать поток. Выдает ошибки при запуске bigory Общие вопросы по Java, Java SE, Kotlin 3 23.09.2010 00:40
Как приостаносить поток до события в другом потоке Sionus Помощь студентам 2 30.03.2010 21:51
Как оповестить основной поток о каком-то событии в потоке (TThread)? TwiX Общие вопросы Delphi 2 11.02.2010 02:57
TClientSocket в потоке BlackOmen Работа с сетью в Delphi 8 27.04.2008 22:19