class MessagePack::Factory::Pool
Public Class Methods
new(factory, size, options = nil)
click to toggle source
# File lib/msgpack/factory.rb, line 156 def initialize(factory, size, options = nil) options = nil if !options || options.empty? @factory = factory @packers = PackerPool.new(size) { factory.packer(options) } @unpackers = UnpackerPool.new(size) { factory.unpacker(options) } end
Public Instance Methods
dump(object)
click to toggle source
# File lib/msgpack/factory.rb, line 173 def dump(object) packer = @packers.checkout begin packer.write(object) packer.full_pack ensure @packers.checkin(packer) end end
load(data)
click to toggle source
# File lib/msgpack/factory.rb, line 163 def load(data) unpacker = @unpackers.checkout begin unpacker.feed_reference(data) unpacker.full_unpack ensure @unpackers.checkin(unpacker) end end