Sha256: c69490ae3c7f3e2cc0e05231568641ea98961004aeef468ef114e7288b351798
Contents?: true
Size: 1.18 KB
Versions: 2
Compression:
Stored size: 1.18 KB
Contents
/* Copyright (C) 2005-2019 Shugo Maeda <shugo@ruby-lang.org> and Charlie Savage <cfis@savagexi.com> Please see the LICENSE file for copyright and distribution information */ /* :nodoc: */ #include "ruby_prof.h" #if HAVE_GETTIMEOFDAY && !defined(_WIN32) #include <sys/time.h> #endif static VALUE cMeasureWallTime; static double measure_wall_time() { struct timeval tv; gettimeofday(&tv, NULL); return tv.tv_sec + (tv.tv_usec/1000000.0); } prof_measurer_t* prof_measurer_wall_time() { prof_measurer_t* measure = ALLOC(prof_measurer_t); measure->measure = measure_wall_time; return measure; } /* Document-method: prof_measure_wall_time call-seq: measure_wall_time -> float Returns the wall time.*/ static VALUE prof_measure_wall_time(VALUE self) { return rb_float_new(measure_wall_time()); } void rp_init_measure_wall_time() { rb_define_const(mProf, "WALL_TIME", INT2NUM(MEASURE_WALL_TIME)); rb_define_const(mProf, "WALL_TIME_ENABLED", Qtrue); cMeasureWallTime = rb_define_class_under(mMeasure, "WallTime", rb_cObject); rb_define_singleton_method(cMeasureWallTime, "measure", prof_measure_wall_time, 0); }
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ruby-prof-0.18.0-x64-mingw32 | ext/ruby_prof/rp_measure_wall_time.c |
ruby-prof-0.18.0 | ext/ruby_prof/rp_measure_wall_time.c |