Mega Code Archive

 
Categories / Ruby / Network
 

Multiple callers

require 'drb' class Counter attr_reader:count   def initialize     @count = 0   end   def increment     @count += 1   end end class TrackedCounter < Counter attr_reader:name attr_reader:createdAt attr_reader:lastAccess   def initialize(name)      super()      @name = name      @createdAt = Time.now      @lastAccess = @createdAt   end end tracked = TrackedCounter.new("Tracked Counter") DRb.start_service("druby://localhost:8888", tracked) DRb.thread.join # accesses the tracked object that has been exported by the server: require 'drb' DRb.start_service tracked = DRbObject.new(nil, "druby://localhost:8888") 5.times do   tracked.increment   puts "The count is #{tracked.count}"   puts "The last access date is #{tracked.lastAccess}" end