Sha256: a1c38a26d0255a60514b7bd12ee0097a18935bf8ea6c656b455c5a64705f74d4
Contents?: true
Size: 973 Bytes
Versions: 1
Compression:
Stored size: 973 Bytes
Contents
# frozen_string_literal: true require 'drb' Class.include UU::Remotable module DRb class DRbObject alias __orig_method_missing method_missing def method_missing(*args, &blk) # rubocop:disable Style/MethodMissingSuper, Style/MissingRespondToMissing __orig_method_missing(*args, &blk) rescue DRb::DRbConnError, Errno::ECONNREFUSED sleep 0.1 retry end end end module UU class RemoteHelper def initialize @mutex = Mutex.new @count = 0 end attr_reader :count def disable @mutex.synchronize do @count += 1 GC.disable end end def enable @mutex.synchronize do @count -= 1 break unless @count <= 0 GC.enable end end def reset @mutex.synchronize do @count = 0 GC.enable end end def eval_(code) instance_eval(code) end def klass(name) eval_(name.to_s) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
uu-0.1.3 | lib/drb/http0helper.rb |