New API : glibtop_get_proc_affinity.

Implemented for linux.

svn path=/trunk/; revision=2609
This commit is contained in:
Benoît Dejean
2007-06-25 17:27:27 +00:00
parent c0856a39bd
commit 6b0bafcafb
15 changed files with 210 additions and 10 deletions

34
examples/affinity.c Normal file
View File

@@ -0,0 +1,34 @@
#include <glibtop.h>
#include <glibtop/procaffinity.h>
#include <glib.h>
#include <unistd.h>
int main(int argc, char **argv)
{
pid_t pid;
glibtop_proc_affinity buf;
guint16 *cpus;
size_t i;
if (argc < 2 || !(pid = strtoul(argv[1], NULL, 0)))
pid = getpid();
glibtop_init();
cpus = glibtop_get_proc_affinity(&buf, pid);
g_print("Process %u:\n"
" - all: %d\n",
(unsigned)pid, buf.all);
for (i = 0; i != buf.number; ++i)
g_print(" - CPU#%u is set\n", cpus[i]);
g_free(cpus);
glibtop_close();
return 0;
}