Project

General

Profile

Backport #461

Re: Hard question: Any ideas why this code leaks memory?

Added by nobu (Nobuyoshi Nakada) almost 12 years ago. Updated 12 months ago.

Status:
Closed
Priority:
Normal
[ruby-core:18350]

Description

=begin
Hi,

At Wed, 20 Aug 2008 04:46:24 +0900,
Sven C. Koehler wrote in [ruby-talk:311847]:

could someone help me understand why this code leaks memory? (I am using
ruby 1.8.6 (2007-12-03 patchlevel 113) [x86_64-linux].)

def rss_leaks
/VmRSS:\s+(\d+)/m.match(File.open("/proc/#{$$}/status") {|f|
f.read })[1].to_i
end

Calling GC.start inbetween does not help, but when we rewrote rss_leaks
this way the leaks disappeared:

def rss_no_leaks()
d = File.open("/proc/#{$$}/status") {|f| f.read }
/VmRSS:\s+(\d+)/m.match(d)[1].to_i
end

Seems a bug.

--
Nobu Nakada
=end

Also available in: Atom PDF