Tôi đã viết chương trình C cần sử dụng CPU và bộ nhớ riêng. Vì vậy, tôi đã viết một cái gì đó như thế này:lệnh trên trả về 0% mức sử dụng CPU khi tôi kiểm tra mức sử dụng CPU của quá trình từ trong quá trình
system("prs_pid=`ps | grep prs-m1 | awk '{print $1}'` \n top -n1 | grep -m1 $prs_pid | \
awk '{print \"prs_cpu:\" $7 \"\\nprs_mem:\" $6}' >> /stats");
tên ứng dụng của tôi là PRS và tôi làm một PS và nhận được pid của quá trình tôi và sau đó muốn có được sử dụng CPU chạy TOP. Chương trình báo cáo nó đang sử dụng bộ nhớ 2% và CPU 0%. Tuy nhiên, việc chạy lệnh tương tự theo cách thủ công trên cmd sẽ trả về cùng một cách sử dụng memry nhưng một CPU khác không hợp lệ mà tôi có thể xác minh bằng cách chạy trên cùng. Những gì tôi không hiểu là tại sao việc sử dụng CPU luôn 0% khi đã cố gắng từ bên trong hệ thống?
Nếu bạn đang sử dụng Linux, chỉ cần đọc từ '/ proc': http://stackoverflow.com/q/16726779/8446 –