<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Ramiro Diaz Trepat wrote:<br>
<br>
<span style="white-space: pre;">&gt;I believe my point is not minor or
foolish.<br>
&gt;I think I might have overreacted to a subtle thing like defending
the<br>
&gt;right cause for the wrong reasons, when I heard that the best mail<br>
&gt;client, web server, etc. were Squeak's, and that there was no
problem<br>
&gt;whatsoever with green threads.<br>
</span><br>
I don't support the mail client claim.&nbsp; Celeste has never worked well
for me (I use _IMAP_ and only _IMAP_) plus I deal with lots of
multimedia e-mail.&nbsp; I'll stick to mozilla mail.<br>
<br>
<span style="white-space: pre;">&gt;A few months ago, Harvard
University's director said that women were<br>
&gt;not performing as well as men on natural sciences. He said something<br>
&gt;that is not an allowed "statement" in the world of political<br>
&gt;correctness; he was heavily attacked, but not honestly questioning
his<br>
&gt;statement, but rather with a message like "this is something no one<br>
&gt;says by now... you should know, you animal". </span><br>
<br>
That and the lack of hard scientific evidence to support any such claim.<br>
<br>
<span style="white-space: pre;">&gt; That's sad...<br>
&gt;I think it is not a proper attitude to consider such an important<br>
&gt;issue as the Squeak threading model not ever using native threads as<br>
&gt;closed.<br>
</span><br>
I agree.<br>
<br>
<span style="white-space: pre;">&gt;In spite your employer does not use
them, I'm sure native threads will<br>
&gt;be needed in some context.<br>
</span><br>
Yes!<br>
<br>
<span style="white-space: pre;">&gt;The most judicious answer (I think
it was from G&ouml;ran), suggested that<br>
&gt;probably the best model would be to have a pool of native threads
and<br>
&gt;a larger pool of green threads running on them.<br>
&gt;And if you remember, I reacted because I did not like the idea of<br>
&gt;sprinkling my code with Processor yield statements. Then, Ned and<br>
&gt;others clarified that I should never ever write that statement. But
I<br>
&gt;think I got the confusion because the only way to get that famous<br>
&gt;SharedQueue filled unsequentially was including the yields in the<br>
&gt;blocks or else... rewriting the scheduler ! :)<br>
</span><br>
This misinformation is getting out of control:<br>
<br>
"section 1"<br>
sq := SharedQueue new.<br>
[10000 timesRepeat: [sq nextPut: 1]] fork.<br>
[10000 timesRepeat: [sq nextPut: 2]] fork.<br>
<br>
"section 2"<br>
sq size<br>
<br>
"section 3"<br>
frontCount := 0.<br>
[sq next = 2] whileFalse: [frontCount := frontCount + 1].<br>
frontCount<br>
<br>
Execute the first section of code above.&nbsp; Wait until it is done (use
the ProcessBrowser to confirm that the two processes are complete).&nbsp;
Print the second section to confirm that the size is 20000.&nbsp; Print the
third to see that the first process did not complete before it was
preempted.&nbsp; If you don't see that (all 10000 are in the front of the
queue), up the numbers by an order of magnitude and try again...your
machine may be faster than my old 800Mhz machine.&nbsp; Now, what are you
talking about?&nbsp; What is the problem you're having with Squeak's
scheduler (besides confusion in this thread)?<br>
<br>
David<br>
-- <br>
C. David Shaffer<br>
<a class="moz-txt-link-freetext" href="http://www.cs.westminster.edu/~shaffer">http://www.cs.westminster.edu/~shaffer</a><br>
<a class="moz-txt-link-freetext" href="http://www.shaffer-consulting.com">http://www.shaffer-consulting.com</a><br>
<br>
</body>
</html>