Мы столкнулись с проблемой с слушателями VB.NET, которые используют высокий процессор (от 50% до 70%) на серверной машине, на которой он запущен. Слушатели используют концепцию потоковой передачи, а также мы использовали класс FileSystemWatcher
, чтобы отслеживать переименование файла, указывая на одно общее местоположение. Оба являются консольными приложениями, а запланированные задания работают весь день. Не могли бы вы помочь мне узнать, как контролировать использование ЦП с этим классом FileSystemWatcher
?Высокое использование ЦП - VB.NET
ответ
Все зависит от кода, в котором вы работаете.
Например, если у вас есть таймер с интервалом в 10 мс, но он работает только каждые 2 минуты, и на каждом интервале таймера вы много проверяете, для этого потребуется много CPU, чтобы ничего не делать.
Если вы используете несколько потоков, а один - в цикле, ожидая, пока второй освободит блокировку (Monitor.TryEnter()), то снова это может занять дополнительный процессор. Вы можете избежать этого, поместив ожидающий поток в Monitor.Wait(), а затем, когда занятый поток будет завершен, Monitor.Pulse().
Помимо общих рекомендаций выше, если вы публикуете ключевые части вашего кода или результаты профиля, мы можем быть в состоянии помочь больше.
Если вы ищете профилировщик, мы используем RedGates ANTS Profiler (стоимость, но с бесплатной пробной версией), и это дает хорошие результаты, я не использовал никого другого для сравнения (и я никоим образом не связан с RedGate) так что другие могут быть лучше.
Надеюсь, что это поможет.
- 1. Отладка Высокое использование ЦП
- 2. Wordpress Высокое использование ЦП
- 3. Высокое использование ЦП SceneKit
- 4. SQL Server Высокое использование ЦП
- 5. NSMutable Array Высокое использование ЦП
- 6. Как исправить высокое использование ЦП
- 7. Высокое использование ЦП в wordpress
- 8. Высокое использование ЦП с SDL + OpenGL
- 9. Высокое использование ЦП при использовании саксонской библиотеки
- 10. Высокое использование ЦП java + struts + проект tomcat
- 11. Высокое использование ЦП при воспроизведении GIF
- 12. Высокое использование ЦП в WSO2 ESB
- 13. Высокое использование ЦП в многопоточном коде C#
- 14. Очень высокое использование ЦП в SpriteKit
- 15. Хром PepperFlash занимает очень высокое использование ЦП
- 16. Высокое использование ЦП при включении агента jprofiler
- 17. ASP.NET: Высокое использование ЦП без нагрузки
- 18. Netbeans Высокое использование ЦП при форматировании кода
- 19. Eclipse: Высокое использование ЦП во время автозаполнения
- 20. Высокое использование ЦП по процессу Postgres
- 21. Высокое использование ЦП, перемещение курсора app C#
- 22. Высокое использование ЦП в группе оракула
- 23. Высокое использование ЦП, когда JRebel находится на
- 24. Высокое использование ЦП с Hibernate FullTextQuery.list()
- 25. Высокое использование ЦП на соответствие шаблону Regex
- 26. Высокое использование ЦП после долгого времени
- 27. Высокое использование ЦП в Кассандре 2.0
- 28. Высокое использование ЦП с анимацией JQuery
- 29. Laravel Высокое использование ЦП - PHP-FPM
- 30. SQL Server 2008 Высокое использование ЦП
У вас есть профайлер, чтобы узнать, куда идет время? – 2010-12-01 07:21:21