multiple callers : Ruby remoting « Network « Ruby






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

 








Related examples in the same category

1.Call remote server
2.Ruby based remoting
3.Use DRb to start a service