Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.09.18;
Скачать: [xml.tar.bz2];

Вниз

Зависание Thread-ов в функциях TMemoryManager (Delphi 2005)   Найти похожие ветки 

 
Ученик   (2005-07-22 22:05) [0]

Кто-нибудь сталкивался с этим на процессорах с HyperThreading ?
Как "лечили" ?


 
tesseract ©   (2005-07-24 19:58) [1]

Я с этим сталикивался на всём от Peintium 166 до Atlon XP и не только на Delphi 2005. Объясни в чём фича :-)


 
Юрий Зотов ©   (2005-07-24 20:10) [2]

Сталкивался в D7 под XP (точнее, были не зависания, а жуткие тормоза - минут по 5-8). Лечил отключением гипертрейдинга.


 
Ученик   (2005-07-24 20:57) [3]

>tesseract ©   (24.07.05 19:58) [1]
Проблема именно в HyperThreading или нескольких процессорах (не проверял), при его отключении или установки одного разрешенного процессора для программы (текущий вариант) проблема уходит.

Насчет фичи не понял, вопрос был Как "лечили" ?

>Юрий Зотов ©   (24.07.05 20:10) [2]
Возможно и тормоза, долго не ждал, при остановке процесса и повторного запуска, зависание проходит.

Косвенный вопрос: кто виноват ? :-)


 
jack128 ©   (2005-07-24 23:07) [4]

Юрий Зотов ©   (24.07.05 20:10) [2]
Сталкивался в D7 под XP (точнее, были не зависания, а жуткие тормоза - минут по 5-8). Лечил отключением гипертрейдинга

воспроизводимый пример есть?


 
Юрий Зотов ©   (2005-07-24 23:56) [5]

> jack128 ©   (24.07.05 23:07) [4]

Исходники у Макса. Там есть мой служебный класс - имитатор TThread, но работающий в основном потоке. Был сделан именно по причине жутких тормозов, иначе отлаживаться было практически невозможно. Предполагалось, что отладка идет с ним, а рабочий вариант компилируется уже с нормальным потоком. Там это как-то очень легко переключается, в одном месте, найдешь без проблем.

> Ученик   (24.07.05 20:57) [3]

Подозреваю, что это какая-то проблема взаимодействия дебаггера с XP и гипертрейдингом. А кто из них в этом виноват - дело темное.

Под ХP встречается еще одна проблема - дебаггер не видит символьных таблиц в DLL (причем после повторной загрузки этих таблиц все идет ОК).


 
Ученик   (2005-07-25 07:17) [6]

>jack128 ©   (24.07.05 23:07) [4]
 Проблема была обнаружена при открытии формы на которой есть  TcxFontNameComboBox (потом в другой форме с поиском в отдельном thread) и проблема видимо "плавающая" - на компьютере более "старом" (тоже с HT), ее не было.

>Юрий Зотов ©   (24.07.05 23:56) [5]
Боюсь, что с отладчиком это не связано, отладчик подключался к работающему приложению, когда приложение "зависало".


 
Ученик   (2005-07-26 22:11) [7]

Похоже надо было задавать вопрос в WinApi, может модераторы переместят ?

Есть подходящее продолжение.

Выше было написано, что текущий вариант решения проблемы  -установка одного разрешенного процессора через SetProcessAffinityMask - устанавливается первый процессор, но хотелось бы устанавливать процессор на котором выполняется главный Thread (MainThreadID), отсюда вопрос

Как узнать номер по порядку текущего процессора ?

В Windows 2003 есть функция GetCurrentProcessorNumber, а как быть в предыдущих версиях ?



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.09.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.01 c
6-1117295385
dolphin1
2005-05-28 19:49
2005.09.18
несколько инет коннекшенов


14-1124513529
Mike Kouzmne
2005-08-20 08:52
2005.09.18
Путевые заметки


14-1124449126
DiamondShark
2005-08-19 14:58
2005.09.18
Вот такая у нас была гроза


1-1124915937
Ginger
2005-08-25 00:38
2005.09.18
Готовый парсер xml-документа в описание формы


9-1116198205
Gar
2005-05-16 03:03
2005.09.18
RPG Creating





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