[#8136] Confused exception handling in Continuation Context — "Robert Dober" <robert.dober@...>

Hi all

13 messages 2006/07/06

[#8248] One-Click Installer: MinGW? or VC2005? — "Curt Hibbs" <ml.chibbs@...>

I just posted this to ruby-talk. But I would also like to discuss this

33 messages 2006/07/18
[#8264] Re: One-Click Installer: MinGW? or VC2005? — Charlie Savage <cfis@...> 2006/07/19

From my experience using both tool chains on Windows (for the ruby-prof

[#8266] Re: One-Click Installer: MinGW? or VC2005? — "Curt Hibbs" <ml.chibbs@...> 2006/07/19

Tim, I'm going to top reply since your post was so long. I'm interested in

[#8267] Re: One-Click Installer: MinGW? or VC2005? — Charlie Savage <cfis@...> 2006/07/19

> Tim, I'm going to top reply since your post was so long. I'm interested in

[#8271] my sandboxing extension!! — why the lucky stiff <ruby-core@...>

I have (what feels like) very exciting news. I finally sat down to code up my

17 messages 2006/07/19

[#8430] Re: doc patch: weakref. — "Berger, Daniel" <Daniel.Berger@...>

> -----Original Message-----

19 messages 2006/07/28
[#8434] Re: doc patch: weakref. — Yukihiro Matsumoto <matz@...> 2006/07/29

Hi,

[#8436] Re: doc patch: weakref. — Daniel Berger <djberg96@...> 2006/07/29

Yukihiro Matsumoto wrote:

[#8437] Re: doc patch: weakref. — Mauricio Fernandez <mfp@...> 2006/07/29

On Sat, Jul 29, 2006 at 07:37:24PM +0900, Daniel Berger wrote:

[#8441] Inconsistency in scoping during module_eval? — "Charles O Nutter" <headius@...>

I have the following code:

18 messages 2006/07/30
[#8442] Re: Inconsistency in scoping during module_eval? — nobu@... 2006/07/30

Hi,

[#8443] Re: Inconsistency in scoping during module_eval? — "Charles O Nutter" <headius@...> 2006/07/30

Why does this:

[#8445] Re: Inconsistency in scoping during module_eval? — Yukihiro Matsumoto <matz@...> 2006/07/30

Hi,

[#8454] Re: Inconsistency in scoping during module_eval? — "Charles O Nutter" <headius@...> 2006/07/31

So to clarify...

Re: thread mystery

From: Hugh Sasse <hgs@...>
Date: 2006-07-06 09:32:57 UTC
List: ruby-core #8135
On Thu, 6 Jul 2006, ara.t.howard@noaa.gov wrote:

> 
> any idea why this script slows downs drastically as it runs and seems to leak
> memory?

I'm not familiar with enough with sync to answer this I suspect, esp. the
memory part, but....
> 
> 
> require 'sync'
> 
> class Switch
>   ON, OFF, NEITHER = true, false, nil
> 

...in here: 
>   def initialize state = OFF
>     extend Sync_m
>     @state = NEITHER
>     @observers = []
>   end

state is not used.  Should that be
      @state = state
otherwise the default OFF doesn't agree with @state being set 
to NEITHER.
> 
>   def on!
>     synchronize(:EX){
>       warn 'on!'
>       @state = ON
>       notity_observers
>     }
>   end
> 
>   def off!
>     synchronize(:EX){
>       warn 'off!'
>       @state = OFF
>       notity_observers
>     }
>   end

so both on! and off! notify_observers, however many....
> 
>   def notity_observers
>     synchronize(:SH){
>       @observers.each do |o|
>         o.notify @state
>       end
>     }
>   end

so could you have a thread for each observer?
> 
>   def add_observer o
>     synchronize(:EX){
>       @observers << o
>     }
>   end
> end
> 
> class SwitchToggle
>   def initialize switch
>     @switch = switch
>     @switch.add_observer self
>   end
>   def notify of
>     case of
>       when Switch::ON
>         Thread.new{ @switch.off! }
>       when Switch::OFF
>         Thread.new{ @switch.on! }
>       else
>         raise of.to_s
>     end
>   end
> end
> 
> switch = Switch.new
> toggle = SwitchToggle.new switch
> 
> switch.on!

Not sure what happens when the synchronize is called within itself,
because synchronize calls notity_observers which calls @switch.on! 
which calls synchronize which calls notity_observers.... 

Not spend enough time to really grok this though.
> 
> STDIN.gets
> 

        Hugh

In This Thread