- 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("<a href="druby://localhost:8888">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, "<a href="druby://localhost:8888">druby://localhost:8888")
- 5.times do
- tracked.increment
- puts "The count is #{tracked.count}"
- puts "The last access date is #{tracked.lastAccess}"
- end
- #该片段来自于http://www.codesnippet.cn/detail/211220121118.html
来源: http://www.codesnippet.cn/detail/211220121118.html