るりまサーチ

最速Rubyリファレンスマニュアル検索!
11件ヒット [1-11件を表示] (0.023秒)
トップページ > クエリ:nil[x] > クエリ:end[x] > クエリ:drb/gw[x]

別のキーワード

  1. _builtin end
  2. ripper end_seen?
  3. _builtin exclude_end?
  4. _builtin end_with?
  5. zlib end

検索結果

drb/gw (38048.0)

drb 通信を中継するゲートウェイ(DRb::GW)と、 中継に必要なオブジェクト識別子変換クラス(DRb::GWIdConv)、 および DRb::DRbObject への拡張が含まれています。

... drb/gw.rb に含まれているものです。

foo.rb
require 'drb/drb'

class Foo
include DRbUndumped
def initialize(name, peer=nil)
@name = name
@peer = peer
end


def ping(obj)
puts "#{@name}: ping: #{obj.inspect}"
@peer.ping(self) if @peer
end
...
...
end


gw_b.rb
require 'drb/drb'
require 'drb/gw'
require 'drb/unix'

DRb.install_id_conv(DRb::GWIdConv.new)

front = DRb::GW.new

s1 = DRb::DRbServer.new('drbunix:/tmp/gw_b_a', front)
s2 = DRb::DRbServer.new('drbunix:/tmp/gw_b_c', front)

s1.thread.join
s2.thread.join

gw...
...w_b_a')
robj[:a] = obj

DRb.thread.join

gw_c.rb
require 'drb/unix'
require_relative 'foo'

foo = Foo.new('c', nil)

DRb.start_service("drbunix:/tmp/gw_c", nil)

robj = DRbObject.new_with_uri("drbunix:/tmp/gw_b_c")

puts "c->b"
a = robj[:a]
sleep 2

a.ping(foo)...