Sha256: aabb5736f9433c726dde2c756e2de7ec8f607eeef15e1695a6b042a1bc0b3185

Contents?: true

Size: 573 Bytes

Versions: 3

Compression:

Stored size: 573 Bytes

Contents

class RMXSynchronizedStrongToWeakHash < RMXStrongToWeakHash

  def initialize
    super
    @queue = Dispatch::Queue.new("#{NSBundle.mainBundle.bundleIdentifier}.rmx.IdentityMap.queue.#{object_id}")
  end

  def [](key)
    res = nil
    @queue.sync do
      res = super
    end
    res
  end

  def []=(key, value)
    res = nil
    @queue.sync do
      res = super
    end
    res
  end

  def delete(key)
    res = nil
    @queue.sync do
      res = super
    end
    res
  end

  def values
    res = nil
    @queue.sync do
      res = super
    end
    res
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rmx-0.6.2 lib/motion/RMXSynchronizedStrongToWeakHash.rb
rmx-0.6.1 lib/motion/RMXSynchronizedStrongToWeakHash.rb
rmx-0.6.0 lib/motion/RMXSynchronizedStrongToWeakHash.rb