proc_args test
This commit is contained in:
		
							parent
							
								
									b2830cafbc
								
							
						
					
					
						commit
						bce3df9cc6
					
				
							
								
								
									
										50
									
								
								exp/sigar_proc_args.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								exp/sigar_proc_args.c
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,50 @@
 | 
				
			|||||||
 | 
					#include <sigar.h>
 | 
				
			||||||
 | 
					#include <stdio.h>
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					gcc -g -o sigar_proc_args -lsocket \
 | 
				
			||||||
 | 
					-L ../bindings/java/sigar-bin/lib -lsigar-sparc-sun-solaris-2.x \
 | 
				
			||||||
 | 
					-I ../include sigar_proc_args.c
 | 
				
			||||||
 | 
					*/ 
 | 
				
			||||||
 | 
					int main(int argc, char **argv)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    sigar_t *sigar;
 | 
				
			||||||
 | 
					    sigar_proc_list_t procs;
 | 
				
			||||||
 | 
					    sigar_proc_args_t args;
 | 
				
			||||||
 | 
					    int n;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (sigar_open(&sigar) != SIGAR_OK) {
 | 
				
			||||||
 | 
					        fprintf(stderr, "Error opening sigar!\n");
 | 
				
			||||||
 | 
					        return -1;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    sigar_proc_list_get(sigar, &procs);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    for (n=0; n<procs.number; n++) {
 | 
				
			||||||
 | 
					        pid_t pid = procs.data[n];
 | 
				
			||||||
 | 
					        int status = 
 | 
				
			||||||
 | 
					            sigar_proc_args_get(sigar, pid, &args);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        printf("-------------------------------\n");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if (status == SIGAR_OK) {
 | 
				
			||||||
 | 
					            int i;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            printf("pid=%d\n", pid);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            for (i=0; i<args.number; i++) {
 | 
				
			||||||
 | 
					                printf("%d=%s\n", i, args.data[i]);
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        else {
 | 
				
			||||||
 | 
					            printf("pid=%d error=%d...%s\n",
 | 
				
			||||||
 | 
					                   pid, status, sigar_strerror(sigar, status));
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        sigar_proc_args_destroy(sigar, &args);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    sigar_proc_list_destroy(sigar, &procs);
 | 
				
			||||||
 | 
					    sigar_close(sigar);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    return 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user