Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 02.09.2008, 11:24
FreeUser FreeUser вне форума
Начинающий
 
Регистрация: 13.08.2008
Сообщения: 119
Репутация: 10
По умолчанию Программа зависает

Программулина скажем так не мелкая, уже 1700 строк кода. И все 1700 строк это работа с текстом. Т.е. загрузил документ и все. Повисло наше чудо. Я смотрю на другие программы, Photoshop к примеру, они и % от выполнения показывают. А ведь там обработка графики, а не текст в 30кб обработать, вставить да удалить. А у меня все виснет, проц на 100% скачет. И программа пока все не сделает не отмирает. Как замерзшая. Вот вопрос, может ли быть это из-за того что у меня все в одном exe?
Ответить с цитированием
  #2  
Старый 02.09.2008, 11:25
FreeUser FreeUser вне форума
Начинающий
 
Регистрация: 13.08.2008
Сообщения: 119
Репутация: 10
По умолчанию

Не, я это к тому. что мне то не принципиально, я то программу для себя пишу. Меня все устраивает, главное работает. Главное не руками. Просто как-то стыдно..
Ответить с цитированием
  #3  
Старый 02.09.2008, 12:40
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Раздели обработку по разным потокам.
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #4  
Старый 02.09.2008, 12:44
Grunch Grunch вне форума
Новичок
 
Регистрация: 08.04.2008
Адрес: Краснодар
Сообщения: 52
Репутация: 10
По умолчанию

То что все в одном файле в принципе не проблема. Хотя, конечно, модульность программы большой плюс. А для того что бы все намертво не висло во время каких-то обработок - запускать их в потоке.
Ответить с цитированием
  #5  
Старый 02.09.2008, 13:00
Аватар для :S.p.a.m.
:S.p.a.m. :S.p.a.m. вне форума
Активный
 
Регистрация: 04.05.2008
Сообщения: 260
Репутация: 15
По умолчанию

Значит такой код раз долго все делает! Чтобы не висла есть статейка
http://codelab.3dn.ru/publ/2-1-0-61
Всмысле окно можно будет таскать и т д!
Ответить с цитированием
  #6  
Старый 02.09.2008, 13:04
FreeUser FreeUser вне форума
Начинающий
 
Регистрация: 13.08.2008
Сообщения: 119
Репутация: 10
По умолчанию

А как это в потоке? Можно простенький пример кода?
Ответить с цитированием
  #7  
Старый 02.09.2008, 13:33
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Простенько конечто не проблема, знать бы что программа делает
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием
  #8  
Старый 02.09.2008, 14:31
Аватар для Vayrus
Vayrus Vayrus вне форума
Исполняемый Ретровирус
 
Регистрация: 09.08.2008
Адрес: Umbrella Corporation
Сообщения: 743
Репутация: 1293
По умолчанию

C потоками полностью согласен - сделай многопоточное приложение, но сперва попробуй во всякие циклы вставить
Код:
Application.ProcessMessages
.

А чтобы узнать где сильнее всего происходит загрузка программы кинь на форму ListBox и перед выполнением каждого этапа обработки текста вставляй туда название текущей операции. Изврат, возможно, но лично мне так нравится ;-)
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:06.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025