e576bb2002-10-11Martin Nilsson /* || This file is part of Pike. For copyright information see COPYRIGHT. || Pike is distributed under GPL, LGPL and MPL. See the file COPYING || for more information.
616c2d2003-01-13Martin Stjernholm || $Id: pike_rusage.h,v 1.12 2003/01/13 13:15:14 mast Exp $
e576bb2002-10-11Martin Nilsson */
24ddc71998-03-28Henrik Grubbström (Grubba) 
66bcf02002-12-07Henrik Grubbström (Grubba) #ifndef PIKE_RUSAGE_H #define PIKE_RUSAGE_H
5267b71995-08-09Fredrik Hübinette (Hubbe)  /* Prototypes begin here */
5ef9052003-01-13Martin Stjernholm typedef long pike_rusage_t[29];
6a118c2002-09-13Martin Stjernholm int pike_get_rusage(pike_rusage_t rusage_values);
5ef9052003-01-13Martin Stjernholm long *low_rusage(void); /* get_cpu_time returns the consumed cpu time (both in kernel and user * space, if applicable), or zero if it couldn't be read. */ #ifdef INT64 /* The time is returned in nanoseconds. (There's no guarantee that the * returned value has nanosecond resolution.) */
616c2d2003-01-13Martin Stjernholm typedef INT64 cpu_time_t;
5ef9052003-01-13Martin Stjernholm #define LONG_CPU_TIME #define CPU_TIME_TICKS /* per second */ ((cpu_time_t) 1000000000) #define CPU_TIME_UNIT "ns" #else /* The time is returned in milliseconds. (Note that the value will * wrap after about 49 days.) */ typedef unsigned long cpu_time_t; #define CPU_TIME_TICKS /* per second */ ((cpu_time_t) 1000) #define CPU_TIME_UNIT "ms" #endif cpu_time_t get_cpu_time (void); INT32 internal_rusage(void); /* For compatibility. */
6a118c2002-09-13Martin Stjernholm #if defined(PIKE_DEBUG) || defined(INTERNAL_PROFILING) void debug_print_rusage(FILE *out); #endif
5267b71995-08-09Fredrik Hübinette (Hubbe) /* Prototypes end here */
66bcf02002-12-07Henrik Grubbström (Grubba) #endif /* !PIKE_RUSAGE_H */