Jag delar upp det här så det blir behagligare att läsa ;) Det finns sätt att få det att gå fort. Om du ska gå "out-of-process" så påstår Clemens att det är det absolut snabbaste sättet.COM+ vara eller inte vara, MYT 2 Object Pooling, JITa
2) Object Pooling, Just In Time activation
Nästa myt. Många skriver och påstår att object pooling och JITa ökar prestandan i dina system. Det här kan vara rätt om det används i rätt scenarion. Men ....
a) Object pooling och Just In Time activation jobbar bra tillsammans, så bra att efter varje anrop till ett objekt så läggs objektet tillbaka poolen. Det innebär tex att jobba med entiteter med olika egenskaper är uteslutet eftersom du inte kan vara säker på vilket objekt du får tillbaka från poolen vid nästa anrop. Så objekt i poolen är bara tillämpliga för objekt som inte innehåller ngt tillstånd.
b) Den stora vinsten för Object pooling är när objekten tar lång tid att skapa eller håller dyra resurser under hela sin livstid. Det är det igentliga användingsområdet.
c) Precis som för transaktioner så skapas här tungrodda och dyra kontexter
Om man kombinerar b och c så kräver det att kostanden för skapandet av objektet är mycket dyrare än kostnaden för kontexten. Annars så tar tjänsterna ut varandra och vi har introducerat komplexitet i vårt system utan någon vinst.Sv: COM+ vara eller inte vara, MYT 2 Object Pooling, JITa
Clemens förklarar det här: http://radio.weblogs.com/0108971/stories/2002/09/12/screamIfYouWantToGoFasterJitActivationPooling.html