Модераторы: bartram, Akella
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как закрыть бесхозную консоль, без привязки к процессу 
V
    Опции темы
GremlinProg
Дата 1.11.2010, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2706
Регистрация: 9.8.2005
Где: Тюмень

Репутация: нет
Всего: 106



Ситуация:

есть mpi-проект, который соответственно запускается через mpiexec,
в проекте, с учетом масштабирования задачи, создается некоторое число ролевых процессов: master, slave, terminal
каждый из процессов создает (в случае GUI) или имеет, свою консоль для интерактивного анализа ( отладки ) их взаимодействия

Проблема:

иногда, после останова всех процессов, на десктопе остаются висеть одна-две таких бесхозных консолей,
эти консоли не привязаны ни к одному из запущенных процессов,
т.е. я не могу их ни как закрыть: ни из диспетчера задач, ни вручную (нажав на крестик),
ни каких свойств консоли я изменить так же не могу (они просто не открываются)

по ходу работы, за день таких консолей может накопиться до 3-4
спасает только жесткая перезагрузка, т.к. штатная не завершается, даже если поубивать все критические процессы,
на десктопе ничего не будет, кроме этих бессмертных консолек и ось будет упорно ждать, пока они завершатся, т.е. всегда

Вопрос:
Возможно ли как-то по человечески прибить эти консоли, либо предотвратить их такое отпочкование от процесса

ps: XP Professional 5.1.2600 SP3


--------------------
"Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины."
PM WWW ICQ   Вверх
GoldFinch
Дата 1.11.2010, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: нет
Всего: 26



GremlinProg, приведи пожалуйста код, или бинарник воспроизводящий эту ситуацию.
PM MAIL ICQ   Вверх
GremlinProg
Дата 1.11.2010, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2706
Регистрация: 9.8.2005
Где: Тюмень

Репутация: нет
Всего: 106



это коммерческий проект, так что ничего существенного не приведу,

для примера можно создать простую заготовку, типа:
Код

int _tmain( int argc, TCHAR*argv[], TCHAR*envp[] ){
  ...
  locale = _create_locale( LC_ALL, lpszLocale );
  ::SetConsoleOutputCP( locale->locinfo->lc_codepage );
  ...
  ::MPI_Init_thread( ..., MPI_THREAD_SERIALIZED ... );
  ...
  for( ... ; ... ; ... ){
    ...
    ::EnterCriticalSection( ... );
    ::SetConsoleTextAttribute( ... );
    ::WriteConsole( ... );
    ::LeaveCriticalSection( ... );
    ...
  }
  ::MPI_Finalize();
}

и покрутить ее немного с mpiexec в отладчике,
у меня обычно 2 слейва на 1 мастер + 1 клиент [клиент тоже имеет аналогичную консоль, но пускается за пределами mpiexec],
раз на раз не приходится, но хоть один-то в день точно бывает,
привязки к роли процесса нет ни какой, т.е. так может и простой клиент залипнуть

единственное, что задаю консоли - шрифт lucida и размеры окна,
здесь цикл - просто для примера, сами процессы, естественно многопоточные

среда разработки - 2008 студия


--------------------
"Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины."
PM WWW ICQ   Вверх
jonie
Дата 1.11.2010, 23:44 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: нет
Всего: 118



а у меня на работе (изрердка дома) такая же фигня .. притом без всяких MPI.. сдается мне это в XP-шке косяк где-то внутри .... посему предлагаю забить )


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
icecrashldr
Дата 2.11.2010, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Developer
*


Профиль
Группа: Участник
Сообщений: 122
Регистрация: 5.7.2010

Репутация: нет
Всего: нет



GremlinProg
Это XP баг, здесь обычным отладчиком не обойтись(скорее всего только ядерным, студии точно не хватит) ... 
Это часто связано с планированием процессов, в APC бывает, много факторов на это играет, но честно говоря таки не было времени и особого желания продебажить эту багу ... 

П.С. А вот на семерки того не бывает ... 

PM MAIL WWW   Вверх
xvr
Дата 2.11.2010, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: нет
Всего: 223



Цитата(GremlinProg @  1.11.2010,  12:52 Найти цитируемый пост)
либо предотвратить их такое отпочкование от процесса
Написать баг репорт в MS. Вот только пошлют ведь ...   smile 



PM MAIL   Вверх
mihanik
Дата 2.11.2010, 13:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 61
Всего: 109



GremlinProg, твою студию лучше на XP не использовать.
У неё проблемы с совместимостью.
Багов много.
Лучше переходи ли на Windows 7, или на другую студию. smile



--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
GremlinProg
Дата 2.11.2010, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2706
Регистрация: 9.8.2005
Где: Тюмень

Репутация: нет
Всего: 106



хотелось конечно малой кровью, т.к. ХР в виртуалке пока нет, а она нужна,
да и времени на смену оси тоже пока нет


--------------------
"Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины."
PM WWW ICQ   Вверх
Akina
Дата 2.11.2010, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 42
Всего: 454



Попробуй в качестве временного решения вручную давить их, используя, скажем, ProcessExplorer.




--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
GremlinProg
Дата 2.11.2010, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2706
Регистрация: 9.8.2005
Где: Тюмень

Репутация: нет
Всего: 106



судя по названию, ProcessExplorer оперирует процессами, (а процесса-то тут как раз и нет, он уже был убит, от него только консоль и осталась) или что?
посмотрю, конечно, как доберусь до нормального инета,
но если его смысл только в этом, то сразу - не поможет


--------------------
"Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины."
PM WWW ICQ   Вверх
Akina
Дата 2.11.2010, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 42
Всего: 454



Цитата(GremlinProg @  2.11.2010,  20:10 Найти цитируемый пост)
процесса-то тут как раз и нет, он уже был убит, от него только консоль и осталась

Ну да... процесса нет, а консоль святым духом на экране держится... раз висит - значит, процесс. Пусть и не тот, который ты запускал, а одна из его многочисленных дочек... причём даже оконный процесс...
PS. Может, я слишком вольно с терминологией...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
leniviy
Дата 2.11.2010, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 552
Регистрация: 8.2.2003
Где: Спб

Репутация: нет
Всего: 5



Это баг XP. У меня было такое же. Никак не прибить
PM MAIL   Вверх
mihanik
Дата 2.11.2010, 20:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 61
Всего: 109



А прятать эти консоли никак?

cmdow нельзя использовать?



--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
GremlinProg
Дата 3.11.2010, 07:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2706
Регистрация: 9.8.2005
Где: Тюмень

Репутация: нет
Всего: 106



Цитата(Akina @  2.11.2010,  21:17 Найти цитируемый пост)
Ну да... процесса нет, а консоль святым духом на экране держится

нет его, на самом деле нет
окно привязано к несуществующему пиду
Цитата(mihanik @  2.11.2010,  22:59 Найти цитируемый пост)
А прятать эти консоли никак? cmdow нельзя использовать?

это да - отличное решение, окно консоли скрыть получилось

Добавлено через 2 минуты и 42 секунды
Код

cmdow 0xYYYYYYYY /HID


0xYYYYYYYY - дескриптор окна, его можно спаем найти


--------------------
"Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины."
PM WWW ICQ   Вверх
GremlinProg
Дата 3.11.2010, 07:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2706
Регистрация: 9.8.2005
Где: Тюмень

Репутация: нет
Всего: 106



или без спая, но по заголовку (у меня там путь к исполняемому файлу),
т.е. одной командой можно скрыть сразу все бесхозные mpi окна

Добавлено через 12 минут и 29 секунд
можно просто бросить exe'шник вот на такой батник, чтобы не морочиться:
Код

C:\cmdow.exe %1 /HID



--------------------
"Гений всегда разумнее, чем умнее. Ум — это машина, разум — водитель этой машины."
PM WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Windows"
December
bartram
Akella

Запрещается!

1. Обсуждать взлом и делиться кряками

2. Способствовать созданию и распространению вирусов

  • Для бессмертных бородатых вопросов типа Win vs Nix есть специальный форум Религиозные Войны
  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • ВСЕГДА УКАЗЫВАЙТЕ ВЕРСИЮ ОС

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, December, bartram, Akella.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Windows | Следующая тема »


 




[ Время генерации скрипта: 0.0809 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.