[#408634] How do I make lots of classes aware of each other? — "Andrew S." <lists@...>

I'm apparently missing something fundamental in my knowledge of classes

10 messages 2013/07/02

[#408712] Ruby web service with REST support — "Shubhada S." <lists@...>

Hi All,

17 messages 2013/07/05

[#408812] create variables depending on counter — stefan heinrich <lists@...>

Hi community,

21 messages 2013/07/09

[#408854] execute commands within SMTP email code: send content in variables and not actual variables — dJD col <lists@...>

I am trying to send an email using the code below. I am able to send the

9 messages 2013/07/10

[#409031] tap { break } idiom deserves its own Kernel method? — Andy Lowry <lists@...>

I use this idiom from time to time:

13 messages 2013/07/22

[#409072] Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...>

This is what I want to do.

19 messages 2013/07/23
[#409102] Re: Link To Masses Of External Data In Openoffice? — Tamara Temple <tamouse.lists@...> 2013/07/24

[#409103] Re: Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...> 2013/07/25

tamouse m. wrote in post #1116598:

[#409122] Re: Link To Masses Of External Data In Openoffice? — Tamara Temple <tamouse.lists@...> 2013/07/26

[#409142] Re: Link To Masses Of External Data In Openoffice? — "Austin J." <lists@...> 2013/07/26

tamouse m. wrote in post #1116750:

[#409073] class <=> module — Bráulio Bhavamitra <lists@...>

Hello all,

17 messages 2013/07/23

[#409104] Ruby newbie question on Methods (NoMethoderror) — "Crispian A." <lists@...>

I have recently started learning ruby and so I am writing a small little

10 messages 2013/07/25

[#409170] Working through Ch.10 for learning to program 2.0 (Chris Pine) — JD JD <lists@...>

So, I have been working through this book, and have been doing ok up

33 messages 2013/07/28
[#409195] Re: Working through Ch.10 for learning to program 2.0 (Chris Pine) — Harry Kakueki <list.push@...> 2013/07/29

I tried this and came up with a one-liner that seems to do it. It sorts the

[#409258] WATIR - ScriptError popup on IE - Unable to get rid of! — Graeme Halls <lists@...>

I am new to Ruby & Watir, and I am having a nightmare with IE and Script

11 messages 2013/07/31

Re: Call a method with block on distributed object (drb)

From: Tony Arcieri <tony.arcieri@...>
Date: 2013-07-18 18:37:12 UTC
List: ruby-talk #408969
Please keep in mind if you pass a block to a remote object, the block will
still be executed locally, and the results of the block invocation sent
back to the remote object.


On Tue, Jul 16, 2013 at 6:35 AM, Enrico Pilotto <lists@ruby-forum.com>wrote:

> Hi.
> I've the follow class for a distributed object:
>
>
>     class Counter
>       def initialize(i = 0)
>         @index = i
>       end
>       def increment
>         @index += 1
>       end
>       def current
>          return @index
>       end
>       def each(n = 1)
>         threads = []
>         n.times do
>           threads << Thread.new do
>             yield(self.current)
>           end
>         end
>         threads.map(&:join)
>       end
>     end
>
>
>
> Now the server:
>
>
>     require 'drb'
>     require './counter.rb'
>
>     DRb.start_service('druby://127.0.0.1:9000', Counter.new)
>     puts "Wordlist server running at #{DRb.uri}"
>     trap('SIGINT') { DRb.stop_service }
>     DRb.thread.join
>
>
> And the client:
>
>
>     require 'drb'
>
>     c = DRbObject.new_with_uri('druby://127.0.0.1:9000')
>     c.each(8) do |i|
>       puts i
>     end
>
>
> I run the server (ok) and then the client and I get the follow error:
>
>
>     /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:1687:in
> `current_server': DRb::DRbServerNotFound (DRb::DRbConnError)
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:1756:in
> `to_id'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:1071:in
> `initialize'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:647:in
> `new'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:647:in
> `make_proxy'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:564:in
> `rescue in dump'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:561:in
> `dump'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:610:in
> `send_request'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:921:in
> `send_request'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:1221:in
> `send_message'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:1110:in
> `block (2 levels) in method_missing'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:1197:in
> `open'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:1109:in
> `block in method_missing'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:1128:in
> `with_friend'
>       from
> /Users/pioz/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/drb/drb.rb:1108:in
> `method_missing'
>       from client.rb:5:in `<main>'
>
>
> Why?
> If I change the client in this way:
>
>
>     require 'drb'
>     require 'mechanize'
>
>     c = DRbObject.new_with_uri('druby://127.0.0.1:9000')
>     threads = []
>     8.times do
>       threads << Thread.new do
>         puts c.current
>       end
>     end
>     threads.map(&:join)
>
>
> all works fine.
> Any idea or help?
>
> --
> Posted via http://www.ruby-forum.com/.
>
>


-- 
Tony Arcieri

In This Thread

Prev Next