[#5218] Ruby Book Eng tl, ch1 question — Jon Babcock <jon@...>

13 messages 2000/10/02

[#5404] Object.foo, setters and so on — "Hal E. Fulton" <hal9000@...>

OK, here is what I think I know.

14 messages 2000/10/11

[#5425] Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — Jon Babcock <jon@...>

18 messages 2000/10/11
[#5427] RE: Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — OZAWA -Crouton- Sakuro <crouton@...> 2000/10/11

At Thu, 12 Oct 2000 03:49:46 +0900,

[#5429] Re: Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — Jon Babcock <jon@...> 2000/10/11

Thanks for the input.

[#5432] Re: Ruby Book Eng. tl, 9.8.11 -- seishitsu ? — Yasushi Shoji <yashi@...> 2000/10/11

At Thu, 12 Oct 2000 04:53:41 +0900,

[#5516] Re: Some newbye question — ts <decoux@...>

>>>>> "D" == Davide Marchignoli <marchign@di.unipi.it> writes:

80 messages 2000/10/13
[#5531] Re: Some newbye question — matz@... (Yukihiro Matsumoto) 2000/10/14

Hi,

[#5544] Re: Some newbye question — Davide Marchignoli <marchign@...> 2000/10/15

On Sat, 14 Oct 2000, Yukihiro Matsumoto wrote:

[#5576] Re: local variables (nested, in-block, parameters, etc.) — Dave Thomas <Dave@...> 2000/10/16

matz@zetabits.com (Yukihiro Matsumoto) writes:

[#5617] Re: local variables (nested, in-block, parameters, etc.) — "Brian F. Feldman" <green@...> 2000/10/16

Dave Thomas <Dave@thomases.com> wrote:

[#5705] Dynamic languages, SWOT ? — Hugh Sasse Staff Elec Eng <hgs@...>

There has been discussion on this list/group from time to time about

16 messages 2000/10/20
[#5712] Re: Dynamic languages, SWOT ? — Charles Hixson <charleshixsn@...> 2000/10/20

Hugh Sasse Staff Elec Eng wrote:

[#5882] [RFC] Towards a new synchronisation primitive — hipster <hipster@...4all.nl>

Hello fellow rubyists,

21 messages 2000/10/26

[ruby-talk:5885] Re: [RFC] Towards a new synchronisation primitive

From: Dave Thomas <Dave@...>
Date: 2000-10-26 21:25:48 UTC
List: ruby-talk #5885
hipster <hipster@xs4all.nl> writes:

> Every instance of class Object (and derivatives) can have a lock, or binary
> semaphore, associated with it. When a method is called on an object that is
> declared synchronized, or a method declared synchronized is called on an
> object, or an object lock is explicitly obtained from within a member
> method, the object becomes locked. The class or method effectively defines
> a closure within which the lock is held.

What happens if the method actually generates a closure?

   def synchronized fred
     str= "hello"
     return proc { str }
   end

   a = fred

In this case, will the lock be released when fred returns, or when the 
proc is garbage collected?

> Of course the declaration
> 
>   def synchronized foo
>   end
> 
> is equivalent to the explicit
> 
>   def foo
>     synchronize{
>     }
>   end

Possibly not, although I'm not sure. Isn't there a different between

    def foo(a, b = bar())
      synchronize {
      }
    end

and

    def synchronized  foo(a, b = bar())
    end

if bar() is itself involved in synchronization?


As 'synchronized' effectively gives us monitors, do you have any ideas 
on implementing condition variables?


Thanks for an interesting piece: I think this could be an interesting
thread ;-)


Dave

In This Thread