[#29987] ライセンス論点整理 — Tacos <ozaki@...>

38 messages 2001/06/01

[#30030] Ruby license discussion — Masayuki Hatta <mhatta@...>

八田と申します。

23 messages 2001/06/02
[#30034] Re: Ruby license discussion — "Akinori MUSHA" <knu@...> 2001/06/02

At Sat, 2 Jun 2001 14:31:02 +0900,

[#30039] Re: Ruby license discussion — akira yamada / やまだあきら <akira@...> 2001/06/02

[#30056] Re: Ruby license discussion — Takaaki Higuchi <thiguchi@...> 2001/06/03

In "akira yamada / やまだあきら <akira@ruby-lang.org>" wrote:

[#30155] How do we treat local static variables? — IKEGAMI Daisuke <daisu-ik@...>

ruby-list の皆さんこんにちは。

13 messages 2001/06/09
[#30156] Re: How do we treat local static variables? — NISHI Takao <zophos@...9.com> 2001/06/09

にし@おかやまです。

[#30163] FW: [arg1:119] RE: [RubyUnit:4203] Re: インストーラ・プロジェクト — "KANEMITSU Masao" <masao-k@...>

金光です。RAAを改善しませんか?

10 messages 2001/06/10

[#30190] 呼び出し元のクラスを知る方法? — "Shin'ya Adzumi" <adzumi@...>

あづみです。

13 messages 2001/06/11

[#30215] パス文字列を操作するライブラリはありませんか? — "Kaoru Shirai" <shirai@...1jp.com>

 こんにちわ。常日頃 Ruby を愛用させて頂いております。

13 messages 2001/06/13

[#30270] setup.rb — rubikitch@...

るびきちです。

16 messages 2001/06/16
[#30291] Re: setup.rb — Minero Aoki <aamine@...> 2001/06/18

あおきです。すみません、見逃してました。

[#30292] Re: setup.rb — rubikitch <rubikitch@...> 2001/06/19

From: Minero Aoki <aamine@mx.edit.ne.jp>

[#30293] Re: setup.rb — TADA Tadashi <sho@...> 2001/06/19

ただただしです。

[#30305] TMarshal — rubikitch@...

るびきちです。

25 messages 2001/06/19

[#30333] 共同著作物の謎( re :ライセンス) — Tacos <ozaki@...>

13 messages 2001/06/20
[#30334] Re: 共同著作物の謎( re :ライセンス) — Tacos <ozaki@...> 2001/06/20

[ruby-list:30074] Re: [Q]drb で提供されている object のメソッド一覧を得るには ?

From: m_seki@...
Date: 2001-06-04 03:41:19 UTC
List: ruby-list #30074
咳といいます。



> > >/usr/lib/ruby/1.6/drb/drb.rb:164:in `method_missing': invalid header (TypeError)
> > >        from drubyonairc.rb:19
> > というようなエラーを追いかけるためです。

おそらく受け取ったObjectの定義を知らなくてMarshal.loadできなかったの
だと思います。


> (ほんととはちょっと違うのですが)こういうことをしようとしてミスってました。
> あ、下のコードは適当に書いているので、変だったらすいません。
> 
> #DORAEMON.rb
> class Nobita
>   def initalize; @name = "のび太" ;end
>   def name; @name; end
> end
> 
> class Doraemon
>   def initalize; @name = "ドラえもん" ;end
>   def name; @name; end
> end
> 
> #FUJIKO.rb
> require "DORAEMON"
> class FFJIO
>   def initialize; @chr = [Doraemon.new,Nobita.new]; end
>   def each_names; @chr.each {|i| yield i.name}; end
>   def each; @chr.each {|i| yield i}; end
> end
> 
> #server.rb
> require 'drb/drb'
> require 'FUJIKO'
> 
> dora = FFUJIO.new
> host = "druby://localhost:9130"
> 
> DRb.start_service(host, dora)
> puts DRb.uri
> DRb.thread.join
> 
> #client.rb
> require 'drb/drb'
> 
> DRb.start_service(nil, nil)
> d = DRbObject.new(nil, "druby://localhost:9130")
> d.each {|o| print "#{o.name}\n"} #←ここで o.nameがみつからない

おそらく、 o が Marshal.load できないんだと思います。
きっとDoraemon, Nobita のインスタンスですよね。

なにが起きているかというと、server.rbでのdoraが参照している
Doraemon, Nobita のインスタンスは値渡し可能になっているので、
client.rbでの d.each で値渡ししようとするんだけど、client.rbは
Doraemon, Nobita の定義がないのでエラーになる‥というわけです。

server.rbの中のDoraemon, Nobitaのインスタンスの参照を渡したいので
あれば、DRbUndumped を include してみてください。

server.rbの中で次のようにするか、DORAEMON.rbに追記するかしてみてください。

  class Nobita
    include DRbUndumped
  end

  class Doraemon
    include DRbUndumped
  end

こーするとserver.rbの中のオブジェクトをclient.rbから利用できます。

In This Thread