Tôi muốn viết một ứng dụng đơn giản theo dõi việc sử dụng bộ nhớ hiện tại của nó, số đối tượng đã tạo vv .. Trong C++, tôi thường ghi đè toán tử mới, nhưng vì lý do hiển nhiên, tôi không thể thực hiện điều này trong C#. Có cách nào để làm điều này mà không sử dụng một hồ sơ?Có thể theo dõi việc sử dụng bộ nhớ trong một ứng dụng C# mà không cần sử dụng trình thu thập thông tin không?
Trả lời
Bạn có thể muốn bắt đầu với Trình thu gom rác. MSDN có một số thành viên được liệt kê here có thể chỉ cho bạn cách thực hiện một số điều, như nhận được tổng số bộ nhớ mà nó cho là được phân bổ, số lần GC đã thu thập được. Bất cứ điều gì cao cấp hơn thế, giống như nhận được một số đối tượng của hội đồng nạp của bạn và bạn sẽ có thể sử dụng một hồ sơ hoặc viết một cái gì đó chính mình.
Bộ đếm hiệu suất bộ nhớ .NET sẽ cung cấp cho bạn thông tin tổng hợp, nhưng không bao gồm bộ đếm đối tượng. Cho rằng bạn sẽ cần một hồ sơ.
Sử dụng WMI thử:
Để có được sử dụng quá trình (W2K3/2K8):
"SELECT IDProcess, PercentPrivilegedTime, PercentProcessorTime, PercentUserTime FROM Win32_PerfFormattedData_PerfProc_Process where Name='process_name.exe'"
Để xác định trang web của bạn sử dụng này:
"SELECT ProcessId, CommandLine, WorkingSetSize, ThreadCount, PrivatePageCount, PageFileUsage, PageFaults, HandleCount, CreationDate, Caption FROM Win32_Process where Caption='process_name.exe'"
Sử dụng công cụ này cho WQL teste
Hoặc sử dụng công cụ PerfMon.
Để biết thêm thông tin về bộ đếm, hãy xem Windows System Resource Manager Accounting, ở cuối tài liệu.
Chúc may mắn.
- 1. ứng dụng bộ nhớ sử dụng hồ bơi theo dõi
- 2. sử dụng bộ nhớ ứng dụng theo dõi trên heroku
- 3. .htaccess cho chương trình SEO thu thập thông tin các ứng dụng đơn lẻ mà không cần băm nhỏ
- 4. Sử dụng protobuf-net, có thể deserialize một tin nhắn mà không cần phân bổ bộ nhớ?
- 5. Sử dụng bộ nhớ C#
- 6. Sử dụng bộ nhớ theo dõi trong R
- 7. Android - Cách theo dõi mức sử dụng băng thông theo ứng dụng hoặc quy trình?
- 8. Sử dụng bộ nhớ ứng dụng .NET - bộ nhớ không được sử dụng .NET và bộ nhớ không được quản lý
- 9. Giảm mức sử dụng bộ nhớ trong ứng dụng iOS mà không bị rò rỉ
- 10. cách thu thập thông tin hệ thống trong osx bằng cách sử dụng mục tiêu c
- 11. Java không thu thập bộ nhớ rác
- 12. Tôi có thể sử dụng git diff trên các tập tin không được theo dõi không?
- 13. Cần chạy ứng dụng Iphone trên trình mô phỏng mà không cần sử dụng xcode
- 14. Có ai biết thư viện Cocoa/Obj-C có thể dùng để thu thập dữ liệu sử dụng ứng dụng
- 15. iPhone - Theo dõi việc sử dụng dữ liệu di động
- 16. đọc thông tin sử dụng ứng dụng
- 17. Vala có thể được sử dụng mà không cần GObject?
- 18. Sử dụng LoaderCallbacks mà không cần Fragment
- 19. Hẹn giờ tăng mức sử dụng bộ nhớ trong ứng dụng C#
- 20. Có tệ khi không sử dụng DB nhưng sử dụng trong các đối tượng bộ nhớ?
- 21. Ứng dụng WinRT có thể sử dụng obfuscation không?
- 22. Có công cụ nào để thu thập số liệu thống kê sử dụng ứng dụng Win32 không?
- 23. sử dụng libcurl mà không cần dll
- 24. Sử dụng trình thu thập Nutch với Solr
- 25. Sử dụng libtool mà không cần sử dụng liên kết
- 26. sử dụng log4net mà không cần web.config
- 27. Có ứng dụng bộ nhớ log4net không?
- 28. Chạy công việc Hadoop mà không cần sử dụng JobConf
- 29. Sử dụng SwingEventMonitor để theo dõi các ứng dụng khác?
- 30. Ứng dụng C# có theo dõi thời gian chạy của ứng dụng C# không?