FANDOM


このページを編集する際は,編集に関する方針に従ってください. 編集

概要 編集

引数 編集

  • void

実装 編集

 80 /*
 81 
 82 @deftypefn Replacement long get_run_time (void)
 83 
 84 Returns the time used so far, in microseconds.  If possible, this is
 85 the time used by this process, else it is the elapsed time since the
 86 process started.
 87 
 88 @end deftypefn
 89 
 90 */
 91 
 92 long
 93 get_run_time (void)
 94 {


 95 #if defined (HAVE_GETRUSAGE) && defined (HAVE_SYS_RESOURCE_H)
 96   struct rusage rusage;
 97 
 98   getrusage (0, &rusage);
 99   return (rusage.ru_utime.tv_sec * 1000000 + rusage.ru_utime.tv_usec
100           + rusage.ru_stime.tv_sec * 1000000 + rusage.ru_stime.tv_usec);


101 #else /* ! HAVE_GETRUSAGE */
102 #ifdef HAVE_TIMES
103   struct tms tms;
104 
105   times (&tms);
106   return (tms.tms_utime + tms.tms_stime) * (1000000 / GNU_HZ);


107 #else /* ! HAVE_TIMES */
108   /* Fall back on clock and hope it's correctly implemented. */
109   const long clocks_per_sec = CLOCKS_PER_SEC;
110   if (clocks_per_sec <= 1000000)
111     return clock () * (1000000 / clocks_per_sec);
112   else
113     return clock () / clocks_per_sec;
114 #endif  /* HAVE_TIMES */
115 #endif  /* HAVE_GETRUSAGE */
116 }



リンク元

広告ブロッカーが検出されました。


広告収入で運営されている無料サイトWikiaでは、このたび広告ブロッカーをご利用の方向けの変更が加わりました。

広告ブロッカーが改変されている場合、Wikiaにアクセスしていただくことができなくなっています。カスタム広告ブロッカーを解除してご利用ください。