George, Ohhhhh I'm really sorry. It's funny now that I go back and look I'm surprised that I missed that. That's a horse of a different color.
Basically to answer your question Transcript is not thread safe. I'm not sure exactly where it goes wrong but I suspect that it is probably doing a copy somewhere and if one collection is used as a source and is copied at the same time with two new additions then one gets lost. To fix that you can set a semaphore which basically says don't try to access Transcript from two places at exactly the same time. semaphore := Monitor new. [10 timesRepeat: [semaphore critical: [Transcript show: '2']]] fork. [10 timesRepeat: [semaphore critical: [Transcript show: '1']]] fork. Transcript cr. This should make transcript thread safe. Hope that helps, Ron Teitelbaum > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:beginners- > [EMAIL PROTECTED] On Behalf Of George Herolyants > Sent: Tuesday, February 20, 2007 3:28 PM > To: A friendly place to get answers to even the most basic questions > aboutSqueak. > Subject: Re: [Newbies] BlockClosure>>fork problem > > Thanks for this answer, Ron. But actually I'm not confused with order in > wich '1' and '2' presents in result line. I can't understand why in some > cases this code results ten '1' and ten '2' and in some cases it results > ten '2' and only nine '1'? > _______________________________________________ > Beginners mailing list > [email protected] > http://lists.squeakfoundation.org/mailman/listinfo/beginners _______________________________________________ Beginners mailing list [email protected] http://lists.squeakfoundation.org/mailman/listinfo/beginners
