Tôi muốn có danh sách tất cả các tên quy trình, CPU, Mem Usage và Peak Mem Usage. Tôi đã hy vọng tôi có thể sử dụng ctypes. nhưng tôi rất vui khi nghe bất kỳ lựa chọn nào khác. Cảm ơn vì đã dành thời gian cho tôi.Python - lấy tên quy trình, sử dụng CPU, Mem và sử dụng Mem cao nhất trong windows
Trả lời
Bạn có thể sử dụng psutil
.
Ví dụ, để có được danh sách các tên quá trình:
process_names = [proc.name() for proc in psutil.process_iter()]
Đối với thông tin về việc sử dụng CPU psutil.cpu_percent
hoặc psutil.cpu_times
. Để biết thông tin về mức sử dụng bộ nhớ psutil.virtual_memory
.
Lưu ý rằng psutil hoạt động với Linux, OS X, Windows, Solaris và FreeBSD và với trăn 2.4 đến 3.3.
psutil có thể nhận được số liệu thống kê mạng ** cho mỗi quá trình ** không? Tôi googled và đọc tài liệu trong khoảng một giờ, đã không tìm thấy bất cứ điều gì – chester89
@ chester89 Điều này là không liên quan đến câu hỏi này. Hãy thử tìm SO cho các câu hỏi psutil về cách sử dụng mạng, và sau đó, nếu bạn không tìm thấy câu trả lời thỏa mãn, hãy tiếp tục và hỏi một câu hỏi mới liên quan đến nó. Trong mọi trường hợp, bạn nên kiểm tra ['Process.connections'] (https://pythonhosted.org/psutil/#psutil.Process.connections). – Bakuriu
Cách biết băng thông đang sử dụng qua mô-đun này –
Tôi thích sử dụng wmic
trên Windows. Bạn có thể chạy nó từ dòng lệnh, vì vậy bạn có thể chạy nó từ Python.
from subprocess import Popen,PIPE
proc = Popen('wmic cpu',stdout=PIPE, stderr=PIPE)
print str(proc.communicate())
Với wmic
bạn có thể dễ dàng nhận được quy trình, CPU và thông tin bộ nhớ. Chỉ cần sử dụng wmic cpu
, wmic process
và wmic memphysical
. Bạn cũng có thể lọc ra các thuộc tính nhất định bằng cách sử dụng wmic <alias> get <attribute>
. Và bạn có thể nhận danh sách tất cả các lệnh với wmic /?
. Hy vọng rằng sẽ giúp!
Bạn có thể kiểm tra các tài liệu chính thức cho WMIC đây: http://technet.microsoft.com/en-us/library/bb742610.aspx
Cảm ơn, đó sẽ là tuyệt vời nhưng nó sẽ cần phải được chạy như quản trị viên, là có một cách để chạy nó như là admin trước khi sử dụng nó trong dòng lệnh? – Daniel
Mã Python 3.3 này hoạt động cho Windows 7 với UAC xuống hết cỡ.
import psutil
import time
def processcheck(seekitem):
plist = psutil.get_process_list()
str1=" ".join(str(x) for x in plist)
if seekitem in str1:
print ("Requested process is running")
processcheck("System")
- 1. apache httpd sử dụng hết mem cho đến khi treo
- 2. Tên của quy trình có mức sử dụng CPU cao nhất
- 3. Cách sử dụng CPU cho mỗi quy trình trong Python
- 4. CPU Sử dụng cao cho ngủ xử lý
- 5. nanosleep sử dụng cpu cao?
- 6. Glassfish - sử dụng CPU cao
- 7. mongodb sử dụng cpu cao
- 8. SQL Server 2008 Sử dụng CPU cao
- 9. Tại sao có rò rỉ mem và cách khắc phục?
- 10. Phát triển và gỡ lỗi mem-hogging C# apps
- 11. Lọc theo tên quy trình và sử dụng CPU đăng nhập
- 12. Sử dụng CPU cao của MySQL
- 13. Sử dụng tài nguyên quy trình Linux (cpu, đĩa, mạng)
- 14. Cách hạn chế sử dụng CPU của một quy trình
- 15. Sử dụng CPU cao trong Eclipse khi nhàn rỗi
- 16. Sử dụng CPU và Object.wait
- 17. Java: Matcher.find sử dụng hiệu suất cpu cao
- 18. đầu hiển thị mức sử dụng CPU không gian người dùng cao nhưng tất cả quá trình hiển thị 0
- 19. Cách sử dụng CPU trong C?
- 20. Linux chương trình miễn phí sử dụng bộ nhớ cao nhưng đầu không
- 21. Làm thế nào để có được PID của quá trình bằng cách xác định tên quy trình và lưu trữ nó trong một biến để sử dụng thêm?
- 22. Hiểu Linux đầu CPU sử dụng đầu ra
- 23. Xác định sử dụng CPU
- 24. Làm thế nào để lấy lại sử dụng CPU cho mỗi quá trình
- 25. Hàng đợi Laravel Artisan - sử dụng CPU cao
- 26. Đặt mức sử dụng CPU tối đa cho mỗi quá trình trong Windows
- 27. Sử dụng CPU với golang
- 28. Cách lấy tên quy trình của ứng dụng?
- 29. Cách sử dụng bộ nhớ trong Windows trong C++
- 30. Cách sử dụng CPU trong C#?
Bạn không thể làm tốt hơn [psutil] (http://code.google.com/p/psutil/) – JBernardo
Trong cửa sổ, đặt cược tốt nhất của bạn có thể là bộ đếm hiệu suất. – ren