de hecho en el 2005 Scott aún decia
*Variables marked with [ThreadStatic]:* These should NEVER be used from
within ASP.NET. I've blogged about its evil before.

2011/2/18 Fabio Maulo <[email protected]>

> Bueno Angel... sería mucho mas coherente si una fuente oficial de Microsoft
> publicara en el MSDN que desde X version de IIS es seguro 100% que para
> resolver completamente un request se usa un unico thread.
> Con esa simple aclaracción nos ahorrariamos de hacer magias para testear
> parte de frameworks cuando el HttpContext.Current no está disponible.
> Si pasas por alguna empresa que escribe articulos y proyectos para
> Microsoft avisale, por favor.
> Gracias.
>
> P.S. cuando ese articulo esté publicado voy a tirar unas cuantas clases y
> lineas de codigos (menos lineas menos bugs).
>
>
> 2011/2/18 Angel Java Lopez <[email protected]>
>
>> Hola gente!
>>
>> Gracias por la info. Paso lo que tengo coleccionado:
>>
>> http://piers7.blogspot.com/2005/11/threadstatic-callcontext-and_02.html
>> http://msdn.microsoft.com/en-us/library/ms178472.aspx
>>
>> http://groups.google.com/group/microsoft.public.dotnet.framework.aspnet/browse_frm/thread/cef5d88a2e3e26e1/85798178bdf7c0c8?q=asp.net+thread+agile&rnum=1&pli=1
>> http://www.hanselman.com/blog/StoringThingsOnThreads.aspx
>> http://msdn.microsoft.com/en-us/library/ms972109.aspx
>> http://integralpath.blogs.com/thinkingoutloud/2005/03/threadstatic_fu.html
>>
>> http://jingyeluo.blogspot.com/2005/06/what-great-net-developers-ought-to_06.html
>>
>>
>> http://www.hanselman.com/blog/ATaleOfTwoTechniquesTheThreadStaticAttributeAndSystemWebHttpContextCurrentItems.aspx
>>
>> Si, ese post de piers7 siempre me parecio el mas informativo, pero vean
>> que es .NET 1.1, y alguien escribio:
>> piers7, am trying to reproduce the same scenario (Thread switching), which
>> is discussed. I am using Asp.net 2.0 (AS.net development server). From your
>> log it is clear that the issue is reproducible. But i could not able to do
>> that in 2.0? Can you please confirm that it is not the problem in 2.0. Also
>> it would be helpful if you can post your code with which you able to
>> reproduce.
>>
>> Alguien pudo reproducir el caso piers7?
>>
>> Por eso, una vez cada dos anios, vuelvo a preguntar por el tema ;-)
>>
>> Angel "Java" Lopez
>> http://www.ajlopez.com
>> http://twitter.com/ajlopez
>>
>>
>>
>> 2011/2/18 Fabio Maulo <[email protected]>
>>
>>> Lamentablemente no hay.
>>> Hubo un rumor emitido por gente muy cercana a Microsoft, hace unos años,
>>> que avisaban que en WEB no es aconsejable usar ThreadStatic "descansando" en
>>> que todo el request se ejecute en el mismo thread; es mas seguro usar el
>>> HttpContext.
>>> Si me avisan de un probable problema yo le creo (a MS)... el problema
>>> está cuando dicen que no hay problemas mientras descubrís que si hay.
>>>
>>> La info viene de Scott Hanselmans pero no encuentro mas el post. Lo que
>>> volví a encontrar es el post de este chico que hizo un lindo estudio:
>>> http://piers7.blogspot.com/2005/11/threadstatic-callcontext-and_02.html
>>> <http://piers7.blogspot.com/2005/11/threadstatic-callcontext-and_02.html>
>>> *What the output shows is that - for the second request - the
>>> BeginRequest events in the HttpModule pipeline and the page constructor fire
>>> on one thread, but the Page_Load fires on another. The second thread has had
>>> the HttpContext migrated from the first, but not the CallContext or the
>>> ThreadStatic's*
>>>
>>> 2011/2/18 Angel Java Lopez <[email protected]>
>>>
>>>>  Evidencia de "ya que un Request hasta se puede ejecutar con mas de un
>>>> thread"?
>>>>
>>>> 2011/2/18 Fabio Maulo <[email protected]>
>>>>
>>>> LOL!!!
>>>>> Por casualidad están hablando de SharpArch ?
>>>>> Hace 1.5 un cliente tenia que empezar una app nueva con NH. En su
>>>>> estructura inicial faltaba solo el "niño Jesús" para tener el presebe
>>>>> completo.
>>>>> Una de la primera cosa que saqué fue la entidad de base de SharpArch...
>>>>> [ThreadSatic] y nada, en un entorno WEB es exactamente lo mismo ya que
>>>>> un Request hasta se puede ejecutar con mas de un thread.
>>>>>
>>>>> No vayan buscando tanta cosas... y sobre todo eviten los frameworks
>>>>> omnipresentes en todos niveles logico de la app. con las classes de .NET
>>>>> sobra... hasta saquen la reference System.Data.Extension si no es 
>>>>> necesario
>>>>> en una assembly especifico.
>>>>>
>>>>
>>>>  --
>>>> Para escribir al Grupo, hágalo a esta dirección:
>>>> [email protected]
>>>> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>>>>
>>>
>>>
>>>
>>> --
>>> Fabio Maulo
>>>
>>>  --
>>> Para escribir al Grupo, hágalo a esta dirección:
>>> [email protected]
>>> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>>>
>>
>>  --
>> Para escribir al Grupo, hágalo a esta dirección:
>> [email protected]
>> Para más, visite: http://groups.google.com/group/NHibernate-Hispano
>>
>
>
>
> --
> Fabio Maulo
>
>


-- 
Fabio Maulo

-- 
Para escribir al Grupo, hágalo a esta dirección: 
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano

Responder a