1.9 Missing method? Time#times

J

jzakiya

I was running the files in the 1.9.0 /samples directory and incurred a
"`<main>': undefined method `times' for Time:Class (NoMethodError)"

time.rb

#! /usr/local/bin/ruby
cmd = ARGV.join(" ")
b = Time.now
system(cmd)
e = Time.now
ut, st, cut, cst = Time.times.to_a
total = (e - b).to_f
STDERR.printf "%11.1f real %11.1f user %11.1f sys\n", total, cut, cst

I did a Time.methods, and sure enough it's there in 1.8.6 but not
1.9.0.

Is this an oversight, or is this now deliberately deprecated behavior?
How would you do the equivalent in 1.9.0 if deprecated?
 
M

Michael Fellinger

I was running the files in the 1.9.0 /samples directory and incurred a
"`<main>': undefined method `times' for Time:Class (NoMethodError)"

time.rb

#! /usr/local/bin/ruby
cmd = ARGV.join(" ")
b = Time.now
system(cmd)
e = Time.now
ut, st, cut, cst = Time.times.to_a
total = (e - b).to_f
STDERR.printf "%11.1f real %11.1f user %11.1f sys\n", total, cut, cst

I did a Time.methods, and sure enough it's there in 1.8.6 but not
1.9.0.

Is this an oversight, or is this now deliberately deprecated behavior?
How would you do the equivalent in 1.9.0 if deprecated?

manveru@sigma ~ % irb
Time.times
(irb):1: warning: obsolete method Time::times; use Process::times
# #<struct Struct::Tms utime=0.08, stime=0.02, cutime=0.0, cstime=0.0>
 
J

jzakiya

manveru@sigma ~ % irb
Time.times
(irb):1: warning: obsolete method Time::times; use Process::times
# #<struct Struct::Tms utime=0.08, stime=0.02, cutime=0.0, cstime=0.0>

Yes

Replacing Process.times for Time.times in the file time.rb
for 1.9 performs the same as in 1.8.6.

Thanks
 

Members online

Forum statistics

Threads
473,755
Messages
2,569,536
Members
45,007
Latest member
obedient dusk

Latest Threads

Top