[Mono-list] remoting and threading in Mono
Manuel Costa
manuel@mail.fct.unl.pt
Wed, 14 May 2003 12:28:46 +0100
This is a multi-part message in MIME format.
------=_NextPart_000_0043_01C31A14.5D490340
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi Lluis,
the problem with the Microsoft implementation has not to do with the =
threadpool itself. It has to do with how they did it and how documented =
it. They only have concurrency if the server machine has more then 1 =
processor or if one of the server threads enters into a sleeping stage. =
Please don't do it has they did it. It's a very ugly threading model.
regards,
Manuel=20
----- Original Message -----=20
From: Lluis Sanchez=20
To: Manuel Costa ; mono-list@lists.ximian.com=20
Sent: Wednesday, May 14, 2003 12:15 PM
Subject: Re: [Mono-list] remoting and threading in Mono
Hi,
There won't be concurrency locks as far as there are enough threads to =
handle the incoming connections. The current implementation does not use =
ThreadPool, it manages threads in its own. It is not using ThreadPool =
because it didn't work very well at the time the TCP channel was =
implemented, but maybe it can be changed now. The reason for using =
ThreadPool is that it is good in managing the =
performance/resource-saving tradeoff (or at least it should).
- Lluis
----- Original Message -----=20
From: Manuel Costa=20
To: mono-list@lists.ximian.com=20
Sent: Wednesday, May 14, 2003 12:48 AM
Subject: [Mono-list] remoting and threading in Mono
Hi guys,
i'd like to know if mono implementation of both tcp and http channels =
provides true concurrency or does it follows the crazy microsoft =
heuristics.=20
P.S. : to read about the Microsoft heuristics read this thread
=
http://groups.google.pt/groups?dq=3D&hl=3Dpt-PT&lr=3D&ie=3DUTF-8&oe=3DUTF=
-8&threadm=3D%23qFKA8JGDHA.2852%40tk2msftngp13.phx.gbl&prev=3D/groups%3Fh=
l%3Dpt-PT%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26group%3Dmicrosoft.public.do=
tnet.framework.remoting
Manuel
------=_NextPart_000_0043_01C31A14.5D490340
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.2800.1170" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>
<DIV><FONT face=3DArial size=3D2>Hi Lluis,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2>the problem with the Microsoft =
implementation has=20
not to do with the threadpool itself. It has to do with how they did it =
and how=20
documented it. They only have concurrency if the server machine has more =
then 1=20
processor or if one of the server threads enters into a sleeping stage. =
Please=20
don't do it has they did it. It's a very ugly threading =
model.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2>regards,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2>Manuel</FONT> </DIV>
<DIV> </DIV></FONT></DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV style=3D"FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV=20
style=3D"BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: =
black"><B>From:</B>=20
<A title=3Dlluis@ideary.com href=3D"mailto:lluis@ideary.com">Lluis =
Sanchez</A>=20
</DIV>
<DIV style=3D"FONT: 10pt arial"><B>To:</B> <A =
title=3Dmanuel@mail.fct.unl.pt=20
href=3D"mailto:manuel@mail.fct.unl.pt">Manuel Costa</A> ; <A=20
title=3Dmono-list@lists.ximian.com=20
=
href=3D"mailto:mono-list@lists.ximian.com">mono-list@lists.ximian.com</A>=
</DIV>
<DIV style=3D"FONT: 10pt arial"><B>Sent:</B> Wednesday, May 14, 2003 =
12:15=20
PM</DIV>
<DIV style=3D"FONT: 10pt arial"><B>Subject:</B> Re: [Mono-list] =
remoting and=20
threading in Mono</DIV>
<DIV><BR></DIV>
<DIV><FONT face=3DArial size=3D2>Hi,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2>There won't be concurrency locks as =
far as there=20
are enough threads to handle the incoming connections. The current=20
implementation does not use ThreadPool, it manages threads in its own. =
It is=20
not using ThreadPool because it didn't work very well </FONT><FONT =
face=3DArial=20
size=3D2>at the time the TCP channel was implemented, but maybe it can =
be=20
changed now. The reason for using ThreadPool is that it is good in =
managing=20
the performance/resource-saving tradeoff (or at least it =
should).</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2>- Lluis</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV style=3D"FONT: 10pt arial">----- Original Message -----=20
<DIV style=3D"BACKGROUND: #e4e4e4; font-color: black"><B>From:</B> <A=20
title=3Dmanuel@mail.fct.unl.pt =
href=3D"mailto:manuel@mail.fct.unl.pt">Manuel=20
Costa</A> </DIV>
<DIV><B>To:</B> <A title=3Dmono-list@lists.ximian.com=20
=
href=3D"mailto:mono-list@lists.ximian.com">mono-list@lists.ximian.com</A>=
</DIV>
<DIV><B>Sent:</B> Wednesday, May 14, 2003 12:48 AM</DIV>
<DIV><B>Subject:</B> [Mono-list] remoting and threading in =
Mono</DIV></DIV>
<DIV><BR></DIV>
<DIV><FONT face=3DArial size=3D2>Hi guys,</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2>i'd like to know if mono =
implementation of both=20
tcp and http channels provides true concurrency or does it =
follows=20
the crazy microsoft heuristics. </FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2>P.S. : to read about the Microsoft =
heuristics=20
read this thread</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial size=3D2><A=20
=
href=3D"http://groups.google.pt/groups?dq=3D&hl=3Dpt-PT&lr=3D&=
;ie=3DUTF-8&oe=3DUTF-8&threadm=3D%23qFKA8JGDHA.2852%40tk2msftngp1=
3.phx.gbl&prev=3D/groups%3Fhl%3Dpt-PT%26lr%3D%26ie%3DUTF-8%26oe%3DUTF=
-8%26group%3Dmicrosoft.public.dotnet.framework.remoting">http://groups.go=
ogle.pt/groups?dq=3D&hl=3Dpt-PT&lr=3D&ie=3DUTF-8&oe=3DUTF=
-8&threadm=3D%23qFKA8JGDHA.2852%40tk2msftngp13.phx.gbl&prev=3D/gr=
oups%3Fhl%3Dpt-PT%26lr%3D%26ie%3DUTF-8%26oe%3DUTF-8%26group%3Dmicrosoft.p=
ublic.dotnet.framework.remoting</A></FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT> </DIV>
<DIV><FONT face=3DArial =
size=3D2>Manuel</FONT></DIV></BLOCKQUOTE></BODY></HTML>
------=_NextPart_000_0043_01C31A14.5D490340--