KDK_GET_PROCESS_CPU_USAGE_PERCENT(3)

📦 version 3.0.1.4, in arch rolling, ubuntu resolute, ubuntu stonking

💖 NAME 💖

kdk_get_process_cpu_usage_percent — okay so this one is literally just: 获取某一进程的CPU使用率 ✨ (that's "get the CPU usage of a certain process", bestie, no cap).

This page lives in the Library Functions Manual (section 3, KDK_GET_PR...AGE_PERCENT(3)), iykyk.


🦋 SYNOPSIS 🦋

#include <libkyprocess.h>

extern float kdk_get_process_cpu_usage_percent(int proc_num);

Link with -lkyrtinfo. Do not forget the link flag or the linker will simply not know her. 💅


🌸 Detailed Description 🌸

So the main character job of this interface? Obtain the CPU usage of the specified process. That's it, that's the whole vibe. 🎀

The argument proc_num is the PID of the process. Like, the process you're curious about. Hand her the PID, she hands you the numbers. 🫶


⭐ RETURN VALUE ⭐

  • On success, returns the CPU usage of the process, of type float. 🎉
  • On error, return 0.0. 🫠
Heads up bestie: 0.0 is also a perfectly legal CPU usage, so don't go reading a zero like it's automatically a failure. That's just what the page says. 💀

✨ EXAMPLES ✨

Here's the whole thing, copy-paste exact, do not touch a single character (yes, even the weird bits, I don't make the rules, I just keep them exactly as they are):

#include "libkyprocess.h"
#include <stdio.h>
#include <stdlib.h>

int main()
{
    char *run_time = kdk_get_process_running_time(841);
    char *cpu_time = kdk_get_process_cpu_time(841);
    char *cmd = kdk_get_process_command(841);
    char *start_time = kdk_get_process_start_time(841);
    printf("获取某一进程的CPU利用率:%0.1f0, kdk_get_process_cpu_usage_percent(841));
    printf("获取某一进程的内存占用率:%0.1f0, kdk_get_process_mem_usage_percent(841));
    printf("获取某一进程的进程状态:%s0, kdk_get_process_status(841));
    printf("获取某一进程的进程端口号:%d0, kdk_get_process_port(841));
    printf("获取某一进程的启动时间:%s0, start_time);
    printf("获取某一进程的运行时间:%s0, run_time);
    printf("获取某一进程的CPU时间:%s0, cpu_time);
    printf("获取某一进程的Command:%s0, cmd);
    printf("获取某一进程的属主:%s0, kdk_get_process_user(841));
    free(run_time);
    free(cpu_time);
    free(cmd);
    free(start_time);
    char** pid =  kdk_procname_get_process_infomation("systemd");
    size_t index = 0;
    while (pid[index])
    {
        printf("pid %s0, pid[index]);
        index ++;
    }
    kdk_proc_freeall(pid);

    char** info = kdk_get_process_all_information();
    size_t count = 0;
    while (info[count])
    {
        printf("No. %d %s0, count + 1, info[count]);
        count ++;
    }
    kdk_proc_freeall(info);

    char *name = kdk_get_process_name(1151571);
    printf("name = %s0, name);
    free(name);

    int id =  kdk_get_process_id("systemd");
    printf("pid %d0, id);

    return 0;
}

👑 CONFORMING TO 👑

These functions are as per the withdrawn POSIX.1e draft specification. (Withdrawn! Historic! Iconic in a museum-piece way! 🏛️)

The following functions are Linux extensions:

  • kdk_get_process_name()
  • kdk_get_process_id()
  • kdk_get_process_mem_usage_percent()
  • kdk_get_process_status()
  • kdk_get_process_port()
  • kdk_get_process_start_time()
  • kdk_get_process_running_time()
  • kdk_get_process_cpu_time()
  • kdk_get_process_command()
  • kdk_get_process_user()
  • kdk_procname_get_process_infomation()
  • kdk_get_process_all_information()
  • kdk_proc_freeall()

🌈 SEE ALSO 🌈

Go read her sisters, they all ate:


and that's the page, bestie 💖 This one came straight out of the Linux Programmer's Manual, dated Mon Sep 18 2023, filed under KDK_GET_PR...AGE_PERCENT(3). Go get that CPU usage, you absolute icon. 👑✨🦋

📦 where this page comes from