Sha256: f8e65764761b228992a127dd4917e05b4cbae7c76151527f9440db0bee4c2fde

Contents?: true

Size: 809 Bytes

Versions: 12

Compression:

Stored size: 809 Bytes

Contents

%w{ lib test }.each do |path|
  path = File.expand_path(File.dirname(__FILE__) + '/../' + path)
  $: << path unless $:.include?(path)
end

require 'fileutils'


def self_ps
  ps = `ps -v #{$$}`.split("\n").last.split(' ')
  %w{
    pid stat time sl re pagein vsz rss lim tsiz pcpu pmem command
  }.inject({}) { |h, k|
    h[k.intern] = ps.shift; h
  }
end

def pmem (msg)
  p [ msg, "#{self_ps[:vsz].to_i / 1024}k" ]
end

pmem 'starting'

require 'rubygems'
require 'rufus/tokyo'

FileUtils.rm('test_mem.tch')

db = Rufus::Tokyo::Cabinet.new('test_mem.tch')

pmem 'wired to db'

500_000.times { |i| db[i.to_s] = "value#{i}" }

pmem 'loaded 500_000 records'

db.each { |k, v| k }

pmem 'iterated 500_000 records'

a = db.collect { |k, v| k + v }

pmem 'collected 500_000 records'

db.close

pmem 'closed db'

Version data entries

12 entries across 12 versions & 2 rubygems

Version Path
rufus-tokyo-1.0.7 test/mem.rb
rufus-tokyo-1.0.6 test/mem.rb
rufus-tokyo-1.0.5 test/mem.rb
rufus-tokyo-1.0.4 test/mem.rb
metry-1.0.0 vendor/rufus-tokyo/test/mem.rb
metry-1.0.1 vendor/rufus-tokyo/test/mem.rb
metry-1.1.0 vendor/rufus-tokyo/test/mem.rb
metry-1.2.0 vendor/rufus-tokyo/test/mem.rb
rufus-tokyo-0.1.1 test/mem.rb
rufus-tokyo-0.1.0 test/mem.rb
rufus-tokyo-0.1.2 test/mem.rb
rufus-tokyo-0.1.3 test/mem.rb