Сокрытие метки в форме Windows занимает 244 мс - PullRequest
4 голосов
/ 21 ноября 2011

Я пытаюсь выяснить, могу ли я найти источник проблемы.Я пытаюсь использовать .NET 4.0 на компактном / компактном компьютере.При запуске приложения с добавлением StopWatch требуется 244 мс для запуска простой строки label.visible = false;, где на моем компьютере это всего лишь 22 мс .Другие части кода работают на 100%, это просто область.Что может быть причиной этого?

Вот система, на которой я пытаюсь запустить приложение.Я знаю, что это дешевый компьютер, но это приложение будет работать только на * .Я просмотрел и удалил все стандартные программы, которые были установлены Acer, и запустил все обновления Windows.

Amazon.com - Acer Aspire Revo AR3700-U3002 Slim и компактный рабочий стол

Характеристики продукта

  • 1,8 ГГц Двухъядерный процессор Intel Atom D525
  • 2 ГБ установленной оперативной памяти DDR3
  • 250 ГБ SATA жесткий диск (5400 об / мин)
  • Встроенная графическая карта nVIDIA Ion
  • Windows 7 Home Premium

Процессор, память и материнская плата

  • Аппаратная платформа: неизвестно
  • Процессор: 1,8 ГГц Intel Atom
  • Количество процессоров: 1
  • ОЗУ: 2 ГБ
  • Тип ОЗУ: неизвестно
  • Слоты памяти:2

Жесткий диск

  • Размер: 250 ГБ
  • Тип: Неизвестный
  • Скорость: 5400 об / мин

Ответы [ 2 ]

2 голосов
/ 22 ноября 2011

На самом деле, это может зависеть от того, на какой платформе вы тоже разрабатываете. GDI + ускорение было удалено в Windows 7 / Vista. Таким образом, выполнение всех операций GDI +, даже таких простых, как скрытие / отображение форм, значительно медленнее.

Это одна вещь, которая не была удалена в Windows Server 2008, но с тех пор была удалена в Windows Server 2008 R2. Поэтому, если вы используете Windows XP или ниже, или Windows Server 2008 или ниже для своего компьютера для разработки, это может быть заметно быстрее, чем аналогичный компьютер с Windows 7 или Windows Vista.

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

Другие проблемы с производительностью - это очень реальный недостаток ОЗУ (особенно если он работает на 64-битной основе), это может привести к тому, что GDI-вызовы будут выдаваться на невероятно медленный жесткий диск (5400 об / мин), если у него недостаточно ОЗУ.

Попробуйте реализовать тот же тест в WPF? Если в WPF скорости очень похожи, это, вероятно, связано с проблемой ускорения видео / аппаратного обеспечения или с памятью, поскольку WPF использует полное аппаратное ускорение 3D и использует видеопамять в основном для пользовательского интерфейса, а не системной оперативной памяти.

0 голосов
/ 03 декабря 2012

Запустите пример несколько раз и получите дополнительную информацию. Особенно вызывайте StopWatch несколько раз подряд, чтобы проверить, какое разрешение он поддерживает.

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

Проверьте, работает ли оборудование на полной производительности, а не на «минимальной скорости процессора» и т. Д. Ноутбук перешел в режим энергосбережения может быть очень медленным.

При реализации пользовательского чертежа вы можете видеть, выполняется ли действие рисования или действие «Событие» все время.

Также проверьте, если у вас много запущенных приложений, на некоторых ноутбуках предустановлена ​​куча программного обеспечения, замедляющего работу компьютера.

Короче говоря, дайте нам гораздо больше информации. Отладьте, какая часть операции выполняется медленно, а затем вернитесь к нам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...