Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Форум группы: delphi > D2010 остается висеть в списке процессов


Автор: kami 21.3.2011, 21:57
Собственно - весь сабж в вопросе.
Ни одного визуабельного окна ProcessExplorer не видит, тем не более, после закрытия bds и исчезновения кнопки с панели задач, он (bds) остается висеть в процессах, занимая память. Причем - процесс не хочет убиваться ни стандартным диспетчером задач, ни ProcessExplorer-ом, ни через cmd>taskkill (не пишется, как в случае к примеру с KIS - "доступ запрещен", просто команда проходит "впустую")...

Из стороннего установлено:
JVCL 3.40
AlphaControls 7.32
madExcept 3 (? не помню точно, а окошка About у них не нашел...)
CNPack 0.9.7 Stable

Замечание - если за время работы Delphi не было открыто ни одного окна с кодом/формой (то есть - открыли "пустую" Delphi и тут же ее закрыли), то выгрузка происходит в штатном режиме.

Вопрос - как и чем промониторить, на чем стопорится выгрузка программы?

Автор: CodeMonkey 22.3.2011, 04:24
А в Process Explorer видны работающие потоки? Какой у них стек вызова?

Кроме того, каким цветом выделен процесс в списке процессов? Случайно не тёмно-серым?

Автор: kami 22.3.2011, 08:26
CodeMonkey, 
Иногда. Вот сейчас попробовал - видна куча потоков, но работающий (имеющий хоть какое-то значение CyclesDelta) только один. Судя по стеку, застопорился на 
Цитата

0 ntkrnlpa.exe!KeWaitForMultipleObjects+0xabc
1 ntkrnlpa.exe!KeWaitForSingleObject+0x492

Цвет из "желтенького" становится "сереньким". На языке ProcessExplorer это означает переход из Netprocess в OwnProcess (что бы это еще значило smile ).

Добавлено через 4 минуты и 1 секунду
Попытка №2 - видны всего 2 потока, при попытке доступа к их стеку выдается ошибка доступа к потоку.
обзываются они !SystemAccert$qqrx20SystemUnicodeString1i+0x20

Автор: kami 22.3.2011, 23:02
Upd:
опытным путем, в ходе деинсталляции всего подряд, проверки работоспособности и установки заново, обнаружил, что проблема ни разу не в дополнительных фичах, установленных в Delphi. 
Вся соль была зарыта в TortouseSVN... Кроме того, в режиме отладки из-за него невозможно было вызывать SelectDirectory (обнаружил только сегодня).
Выяснил виновника "случайно", посмотрев стек после ошибки в ходе вызова SelectDirectory - в нем было штук 8 вхождений tsvn-дллки.
Весьма странно, т.к. регулярно обновляю этого клиента, пользуясь всегда последними версиями...

Как теперь жить без svn... smile 

Автор: kami 6.4.2011, 21:01
Upd1.
Проблема не пофиксена и проявилась опять.
Самое интересное - если попробовать завершить процесс (через диспетчер задач или ProcessExplorer), то он все равно остается висеть...спасает только перезагрузка, которая из-за этих висящих bds, само собой, длится безумно долго (+ ко всему - сама Vista долго грузится)... Если не обращать на это внимания - распухает файл подкачки, что уже само по себе напрягает...

Есть какие-нибудь идеи?

Автор: Akella 8.4.2011, 09:20
Попробуй неофициальные обновления для дельфи установить, здесь, в соседней теме.

Автор: Frees 8.4.2011, 10:03
Цитата(kami @  7.4.2011,  00:01 Найти цитируемый пост)
Есть какие-нибудь идеи?

избавиться от висты и станет легче.(проверено опытным путем)

Автор: kami 8.4.2011, 18:53
Akella, IDE FixPack - не помог...

Frees, избавиться от Висты - дело, конечно, интересное. Но - Виста лицензионная, а на семерку денег пока нет, да и потом не предвидится. Мне же периодически бывает нужна реакция программы на UAC. Так что - избавиться пока "не судьба". Кстати, на XP (тоже лицензия, на работе) этот же дистрибутив с тем же набором компонентов (кроме Tortouse SVN) работает на ура.

Есть ли возможность включить какой-нибудь "лог выгрузки", чтобы посмотреть на чем стопорится?

Автор: Akella 9.4.2011, 20:19
Цитата(kami @  8.4.2011,  18:53 Найти цитируемый пост)
 а на семерку денег пока нет, 

Купи "Стартер". Совсем недорого.

Добавлено через 1 минуту и 2 секунды
Цитата(kami @  8.4.2011,  18:53 Найти цитируемый пост)
Akella, IDE FixPack - не помог...

Посмотри на том сайте, есть какой-то booster для Delphi. Он помогает нормально и быстро закрыть IDE.

Автор: Akella 11.4.2011, 13:43
http://andy.jgknet.de/blog/ide-tools/delphispeedup/

Features:
    Improves Delphi/BCB/BDS’s load times
    Optimizes often used RTL functions by functions form the FastCode project
    All optimizations are done in memory and do not change any file on disk
    Adds a “Close all and kill” menu item to the “File” menu that terminates the IDE very fast
    The fast termination is used when you close the IDE while pressing the CTRL key.
    Shows waiting cursor while loading designtime package
    Optimizes the Delphi Compiler’s C RTL
    Optimizes the Debugger, especially the Step-Into functionality
    CodeCompletion and HelpInsight can be aborted by ESC/mouse move

Добавлено через 2 минуты и 8 секунд
К сожалению для D2010 нет delphispeedup :(

Цитата

Where is DelphiSpeedUp for Delphi/C++Builder 2009/2010
There is no need for a DelphiSpeedUp for Delphi/C++Builder 2009/2010. The IDE is faster than Delphi 2007 with an installed DelphiSpeedUp. 

Автор: kami 11.4.2011, 20:20
Цитата(Akella @  11.4.2011,  13:43 Найти цитируемый пост)
К сожалению для D2010 нет delphispeedup :(

уже посмотрел.
прошу прощения за молчание - у ноутбука оказалась аллергия на сладкий чай smile
сейчас пишу на виртуальной клавиатуре smile 
Проблема актуальна, madExcept, svn - не при делах... сейчас попробую без cnpack. Если не он - даже не знаю, что думать..

Добавлено через 1 минуту и 15 секунд
самое интересное - ну почему убивание процесса не срабатывает?

Автор: Akella 12.4.2011, 12:09
Может дело в UAC? У тебя все последние обновления на висту установлены?

Автор: CodeMonkey 12.4.2011, 18:03
Цитата(kami @  11.4.2011,  21:20 Найти цитируемый пост)
самое интересное - ну почему убивание процесса не срабатывает? 


http://www.transl-gunsmoker.ru/2009/05/blog-post_16.html.

Автор: kami 3.5.2011, 20:19
Будем считать, что проблема решена.
Правда, не так, как хотелось бы, малой кровью - т.е. манипуляциями непосредственно с Delphi и окололежащими продуктами, а полной переустановкой системы.
Благо, настроение было подходящим, то есть отвратным smile

Теперь проблем с закрытием Delphi нет.
В общем, вопрос помечаю как "решенный", хотя в реальности это не так, ибо решился он "не нашими методами".

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)