На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
  
> WPF на Windows 11
    Доброго времени суток всем! Образовалась небольшая проблема, вернее огромное проблемище. Проект над которым я сейчас работаю, пишется под Windows 10 на C# Core 6 WPF. Представляет из себя многопоточное приложение с GUI на WPF, потоки собирают с оборудования данные и отдают сервисам на обработку. Под десяткой проблем нет, работает без проблем совершенно, но в одиннадцатой поделке мелкомягких дикие фризы, причем по ощущениям фризятся потоки с частым срабатыванием, например с частотой килогерц получающих простые данные и раздающих нуждающимся в этих данных. Фризы пропадают если запустить приложение в режиме совместимости с Windows 7, но начинаются необъяснимые краши, периодически сборщик мусора начинает уничтожать потоки, и именно те про которые я писал раньше. Не могу понять в чем дело и как это лечить. Если вдруг кто сталкивался, или знает, хотя бы предполагает как данную беду разрешить, прошу помощи.


    ЗЫ: Проект собирать под Windows 11 пробовал, не помогает ....
      Pit-Bul, я в C# вообще не разбираюсь. Но у тебя похоже и, скажем так, "проблема общего плана". Попробуй прогнать свой проект в профилировщике, типа Visual Studio Profiler. Ну или что-то в этом роде. Надеюсь, что это позволит тебе выявить те узкие места в твоей проге, которые вызывают эти траблы.
        Majestio, делал, выяснил только что GUI выжирает большую часть процессорного времени. В итоге немного удалось оптимизировать но по потокам это большого прироста не дало. Сегодня нашел тонкое место одно, сейчас будем тестировать как отдадут машину. Если сработает отпишусь тут в чем была проблема.
          Цитата Pit-Bul @
          Majestio, делал, выяснил только что GUI выжирает большую часть процессорного времени.

          Такое часто бывает, когда часть вычислений выносят в главный поток (в GUI), либо неграмотно выстраивают процессы ожидания/управления дополнительными потоками. Скорее всего дело где-то там.
            Majestio, в главном потоке нет вычислений, но много графики. Решил я вопрос, надо было собирать под Windows 11 используя SDK для Windows 11, а у меня в проекте был указан SDK для Windows 10, причем не самый последний. В итоге ломался таск который рисовал контрол один, в нем использовались Deprecated методы и Graphics из старых фреймворков ...
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0356 ]   [ 16 queries used ]   [ Generated: 8.10.24, 02:34 GMT ]