Главная страница
    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.033 c
1-1106819229
Sphinxx
2005-01-27 12:47
2005.02.13
У кого-нибудь есть алгоритм замены строк в файле?


3-1105949709
mva
2005-01-17 11:15
2005.02.13
Запрос в Interbase


1-1107095142
ТехникПТО
2005-01-30 17:25
2005.02.13
Сохранение настроек программы


3-1105079633
Mefodiy
2005-01-07 09:33
2005.02.13
Ошибка при записи изменений в Oracle через dbExpress


3-1105699018
Del
2005-01-14 13:36
2005.02.13
Соединение баз





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский