Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];

Вниз

thread и тормоза программы   Найти похожие ветки 

 
Dysan ©   (2005-01-27 12:18) [0]

Использую thread для создания фоновой работы
вернее хотел сделать чтобы интерфейс программы был свободен в тот момент когда поток работает.
Сделал. Но почему то не помогло :( Приходиться ожидать
когда поток завершит работу и только тогда программа отмирает.
В чем проблема? Я делаю синхронизацию. И вообще в потоке не обращаюсь к форме программы. пытался поиграть с приоритетами потока - результат тот же. В потоке использую процедуры прописанные из DLL. может в них дело?


 
Smithson   (2005-01-27 12:21) [1]

дело имеено в синхронизации. Все, что выполняется в синхронизированной процедуре, выполняет основной поток. И сообщения он при этом не обрабатывает


 
Dysan ©   (2005-01-27 12:27) [2]

т.е. если я не буду делать синхронизацию то он будет работать не заметно? так? но при этом нельзя будет обращаться к форме? так?


 
KSergey ©   (2005-01-27 12:36) [3]

угу
хотя так ответить - слишком смело с моей стороны, ибо что вы пониаете под "обращаться к форме"... ;)


 
Digitman ©   (2005-01-27 12:38) [4]


> Я делаю синхронизацию. И вообще в потоке не обращаюсь к
> форме программы


нафих тогда тебе синхронизация нужна, если "не обращаешься" ?
можешь объяснить вразумительно ?


 
Dysan ©   (2005-01-27 12:43) [5]

ну когда начал делать я еще обращался.
а увидев тормоза переделал но вот о синхронезации как то не подумал!


 
Polevi ©   (2005-01-27 12:44) [6]

у него Synchronize(DoWork)


 
Digitman ©   (2005-01-27 12:49) [7]

Н.Кариха - к ногтю !


 
jack128 ©   (2005-01-27 12:55) [8]

Polevi ©   (27.01.05 12:44) [6]
Дело Архангельского живет  и процветает..

Dysan ©   (27.01.05 12:18)
Код давай. А то мы тут полгода гадать можем, что и тя и как.. В особенности интересует код, где есть обращение к формам или используется Synchronize..


 
TUser ©   (2005-01-27 13:06) [9]

1. Нельзя ставить весь код Execute"а в синхронайз.
2. Если не 1, тогда - надо расставить по ходу потока sleep(0), в эти моменты управление будет передаваться основному потоку, и программа не будет висеть.


 
Dysan ©   (2005-01-27 13:27) [10]

ну вопщем
я разобрался спасибо.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.035 c
3-1105424532
Russko
2005-01-11 09:22
2005.02.13
Работа с базами InterBase


4-1104092956
Neiron
2004-12-26 23:29
2005.02.13
Сигнатуры в PE файле


1-1106812445
tytus
2005-01-27 10:54
2005.02.13
ListBox.Item и Объект


9-1099849062
MsShtaer
2004-11-07 20:37
2005.02.13
Тени в DirectX


4-1104111084
Goorus
2004-12-27 04:31
2005.02.13
Как работать с Drag n Drop





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский