Function: get-internal-run-time
get-internal-run-time is a function defined in sysdep.c.
Signature
(get-internal-run-time)
Documentation
Return the current run time used by Emacs.
The time is returned as in the style of current-time.
On systems that can't determine the run time, get-internal-run-time
does the same thing as current-time.
Probably introduced at or before Emacs version 22.1.
Source Code
// Defined in /usr/src/emacs/src/sysdep.c
{
#ifdef HAVE_GETRUSAGE
struct rusage usage;
time_t secs;
int usecs;
if (getrusage (RUSAGE_SELF, &usage) < 0)
/* This shouldn't happen. What action is appropriate? */
xsignal0 (Qerror);
/* Sum up user time and system time. */
secs = usage.ru_utime.tv_sec + usage.ru_stime.tv_sec;
usecs = usage.ru_utime.tv_usec + usage.ru_stime.tv_usec;
if (usecs >= 1000000)
{
usecs -= 1000000;
secs++;
}
return make_lisp_s_us (secs, usecs);
#else /* ! HAVE_GETRUSAGE */
#ifdef WINDOWSNT
return w32_get_internal_run_time ();
#else /* ! WINDOWSNT */
return Fcurrent_time ();
#endif /* WINDOWSNT */
#endif /* HAVE_GETRUSAGE */
}