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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.08.2010, 11:59   #11
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

как надо и как не надо использовать потоки
http://programmersforum.ru/showthread.php?t=105618
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 11.08.2010, 12:04   #12
Ins
Форумчанин
 
Регистрация: 29.12.2007
Сообщений: 137
По умолчанию

Цитата:
как надо и как не надо использовать потоки
Цитата:
внутри потока не действует цикл обработки сообщений windows. Все сообщения отправляются основному потоку. Значить нельзя использовать те компоненты, которые пользуются для своей работы такими сообщениями. Точнее-то можно но для этого придется использовать synhonize что приводит к абсурду: использовать дополнительный поток, чтобы работать в основном (смотри предыдущее замечание).
Не совсем верно:
1. Соообщения отправляются не главному потоку, а тому, который создал окно, т.е. если окно создано в дополнительном потоке, сообщение будет положено в его очередь, а не очередь главного потока

2. В потоке ЛЕГКО можно обрабатывать сообщения, если в этом есть необходимость, просто цикл выборки нужно организовать самостоятельно
Ins вне форума Ответить с цитированием
Старый 11.08.2010, 22:02   #13
alexprey
Форумчанин
 
Регистрация: 25.05.2010
Сообщений: 169
По умолчанию

Аааа. Этой теме уже несколько дней, и до сих пор нет ответа, как сделать. При этом каждый развивает свою тему и иногда не относящеюся к вопросу. И вообще это единственный форум, на котором я получаю ответ на свой вопрос более чем 1 день
alexprey вне форума Ответить с цитированием
Старый 11.08.2010, 23:02   #14
Ins
Форумчанин
 
Регистрация: 29.12.2007
Сообщений: 137
По умолчанию

Потому что вопросы нужно правильно задавать, описывать ЧТО тебе нужно сделать, а не то КАК ты собираешься это сделать. Зачем тебе поток, который просто спит, потом просыпается, что-то делает и завершается? Сделай так, чтобы твой поток не простаивал попусту - создавай в нужный момент и запускай, и никаких тебе таймеров. Чем этот сценарий
1. Создали поток
2. Усыпили на 10 секунд
3. Пробудили и заставили выполнить действие
4. Уничтожили поток
лучше чем:
1. Выставили таймер на 10 секунд в главном потоке
2. По таймеру создали поток и запустили, чтобы он заработал
3. Уничтожили поток (или он самоуничтожился по завершению)

?
Ins вне форума Ответить с цитированием
Старый 11.08.2010, 23:14   #15
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Цитата:
Сообщение от alexprey Посмотреть сообщение
Аааа. Этой теме уже несколько дней, и до сих пор нет ответа, как сделать. При этом каждый развивает свою тему и иногда не относящеюся к вопросу. И вообще это единственный форум, на котором я получаю ответ на свой вопрос более чем 1 день
Нет плохих солдат, есть плохие начальники
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Trouble с функцией в потоке Sam Gold Общие вопросы C/C++ 0 03.05.2010 21:04
Создать таймер в потоке? TwiX Общие вопросы Delphi 9 23.02.2010 21:39
работа с TStringList в потоке OPF_Nik Помощь студентам 6 01.02.2010 15:15
Ошибка в потоке User>lia Общие вопросы Delphi 5 20.01.2009 18:55
TClientSocket в потоке BlackOmen Работа с сетью в Delphi 8 27.04.2008 22:19