![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Программа что-то делает, как попасть на код где это происходить.
Kolan © (2007-06-01 16:14:00)В обин прекрасный момент программа начинает грузить проц на 99 процентов.
Причем форма не висит наглухо.
Как понять что она делает? Мне кажется это в стороннем компоненте(исходник есть) но найте где там трудно
Kolan (2007-06-01 17:20:00) [1]Нашел что надо вернуть как было, чтобы ошибки небыло,но блин так и не понял что за бред :(, благодарю за помошь. Буду думать
Плохиш (2007-06-01 17:15:00) [2]
> SpellCaster (01.06.07 17:14) [13]
Ctrl+Alt+S
SpellCaster (2007-06-01 17:14:00) [3]> [6] Плохиш © (01.06.07 16:52)
Можно вопрос - как?
Kolan (2007-06-01 17:07:00) [4]> Над «прекрасностью» момента подумай на досуге)
Ладно подумаю :)
Kolan (2007-06-01 17:06:00) [5]Так самое главное если на Suspend; точку поставить она не срабатывает сама.
А вот если нажать напаузу и шагать, то все время туда попадаю :(
Сергей М. (2007-06-01 17:02:00) [6]
> Kolan
Над "прекрасностью" момента подумай на досуге)
А по сабжу - 100% говорит о 100%-й работе как минимум однего треда твоего процесса в user-time.
Сергей М. (2007-06-01 17:00:00) [7]
> В обин прекрасныймомент программа начинает грузить проц
> на 99 процентов
Если он "прекрасный", значит ты о нем мечтал (можно ли мечтать о безобразном ?)
Если ты о нем мечтал, то не все ли равно чтго и как она, прога, делает, если это прекрасно?)
Kolan (2007-06-01 16:58:00) [8]и в логе
6:48:53:218 Поток извлечения пакетов приостановлен.
67590 16:48:53:218
67591 16:48:53:718 Поток извлечения пакетов приостановлен.
67592 16:48:53:718
67593 16:48:54:437 Поток извлечения пакетов приостановлен.
67594 16:48:54:437
67595 16:48:54:906 Поток извлечения пакетов приостановлен.
67596 16:48:54:906
67597 16:49:02:171 Поток извлечения пакетов приостановлен.
67598 16:49:02:171
67599 16:49:02:515 Поток извлечения пакетов приостановлен.
67600 16:49:02:515
67601 16:49:02:671 Поток извлечения пакетов приостановлен.
А Resume нет(там тоже в лог запись есть).
Как он может оживать сам? :(
Kolan (2007-06-01 16:56:00) [9]Смысл вот в чем:
Доходит до Suspend:
procedure TPackageExtractor.Execute;
begin
while not Terminated do
begin
if ReadIndex >= WriteIndex then
begin
//
LogManager.WriteString('Поток извлечения пакетов приостановлен.');
LogManager.WriteString('');
//
Suspend;
засыпает
проц грузится на 100 неизвестно где. Если снова нажать на «паузу»(с двумя вертикальными полосками) и снова F9, то опять попадаем наSuspend;.
НО! Resume нигде не вызывается. и поток этот занаво не создается как так может быть :(???
Плохиш (2007-06-01 16:52:00) [10]Смотри стек вызовов.
Kolan (2007-06-01 16:51:00) [11]> Ну потом можно начать нажимать кнопки F7/F8.
крутится вот тут. Что-то мне это ни о чем не говорит :(
0046C00B 55 push ebp
0046C00C 6829C04600 push $0046c029
0046C011 64FF30 push dword ptr fs:[eax]
0046C014 648920 mov fs:[eax],esp
0046C017 8B45FC mov eax,[ebp-$04]
0046C01A E8D1FDFFFF call TApplication.HandleMessage
0046C01F 33C0 xor eax,eax
0046C021 5A pop edx
0046C022 59 pop ecx
0046C023 59 pop ecx
0046C024 648910 mov fs:[eax],edx
0046C027 EB15 jmp $0046c03e
0046C029 E9E288F9FF jmp @HandleAnyException
0046C02E 8B55FC mov edx,[ebp-$04]
А как соотнести номер потока из CPU Window c тем что описан в коде?
View Threads открыл Может посмотреть номера пи их создании?
Плохиш (2007-06-01 16:41:00) [12]Ну потом можно начать нажимать кнопки F7/F8.
PS. Колян, не начинай, а.. У тебя-то не одна извилина...
Kolan (2007-06-01 16:38:00) [13]Не пойму никак :(
Kolan (2007-06-01 16:22:00) [14]> [1] Плохиш © (01.06.07 16:21)
> Кнопка «Пауза» с двумя вертикальными полосками.
Да нажимал :) И что там мона понять? Как перейти на код :(
Плохиш (2007-06-01 16:21:00) [15]Кнопка "Пауза" с двумя вертикальными полосками.