Yes, I saw it and that's the reason of my email :)<br><br><div class="gmail_quote">On Wed, Jul 1, 2009 at 4:34 PM, Igor Stasenko <span dir="ltr"><<a href="mailto:siguctua@gmail.com">siguctua@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div><div></div><div class="h5">2009/7/1 Mariano Martinez Peck <<a href="mailto:marianopeck@gmail.com">marianopeck@gmail.com</a>>:<br>
><br>
><br>
> On Wed, Jul 1, 2009 at 4:22 PM, Igor Stasenko <<a href="mailto:siguctua@gmail.com">siguctua@gmail.com</a>> wrote:<br>
>><br>
>> 2009/7/1 Mariano Martinez Peck <<a href="mailto:marianopeck@gmail.com">marianopeck@gmail.com</a>>:<br>
>> > Hi folks! I am doing some benchmarks and I having problems with fork (I<br>
>> > think).<br>
>> ><br>
>> > I have this method collect:<br>
>> ><br>
>> > collect<br>
>> > |semaphores tr|<br>
>> > semaphores := Array new: 10.<br>
>> > tr := ThreadSafeTranscript new.<br>
>> > tr open.<br>
>> > 1 to: 10 do: [ :index | semaphores at: index put: Semaphore<br>
>> > forMutualExclusion ].<br>
>> ><br>
>> > 1 to: 10 do: [:i |<br>
>> > [<br>
>> > tr show: 'one fork'; cr.<br>
>> > (semaphores at: i) signal.<br>
>> > ] fork<br>
>> > ].<br>
>> ><br>
>> > semaphores do: [:each | each wait ].<br>
>> > tr show: 'all forks proccesed'; cr.<br>
>> ><br>
>> ><br>
>> > What I want is that the method collect returns when ALL of the forks<br>
>> > created<br>
>> > inside, are finished. Obviously in my real code, I don't do a transcript<br>
>> > show: but another thing.<br>
>> ><br>
>> > I would expect something like this:<br>
>> ><br>
>> > one fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one fork<br>
>> > all forks proccesed<br>
>> ><br>
>> > But the output is:<br>
>> ><br>
>> ><br>
>> > all forks proccesed<br>
>> > one fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one forkone fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one forkone fork<br>
>> > one fork<br>
>> > one fork<br>
>> > one forkone fork<br>
>> ><br>
>> > So, I guess it isn't working :( I don't know too much about forks so<br>
>> > any<br>
>> > help is welcome!<br>
>> ><br>
>> > can be a problem with ThreadSafeTranscript ? If so, how could I test<br>
>> > if my<br>
>> > code is working as expected ?<br>
>> ><br>
>><br>
>> Mariano, sorry it way my mistake. In example that i gave you on IRC ,<br>
>> i put Semaphore forMutualExclusion,<br>
>> while obviously it should be simply: Semaphore new.<br>
><br>
> Sorry, I was having lunch.<br>
><br>
> Igor: I didn't know that sig__ where you :)<br>
<br>
</div></div>see my footer, down below :)<br>
<font color="#888888"><br>
<br>
--<br>
</font><div><div></div><div class="h5">Best regards,<br>
Igor Stasenko AKA sig.<br>
<br>
</div></div></blockquote></div><br>