<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Digging into interface calls in the .NET Framework:  Stub-based dispatch.</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx</link><description>In my last blog , I demonstrated how to use the .NET SOS.DLL extension DLL in the Visual Studio. In this entry I will use the capabilities of this extension DLL to dig into the way the .NET framework handles interface dispatch. As with all my blog entries,</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: Digging into interface calls in the .NET Framework:  Stub-based dispatch.</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#550540</link><pubDate>Mon, 13 Mar 2006 19:50:37 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:550540</guid><dc:creator>snaveen</dc:creator><description>Cool post :)</description></item><item><title>re: Digging into interface calls in the .NET Framework:  Stub-based dispatch.</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#556415</link><pubDate>Tue, 21 Mar 2006 14:10:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:556415</guid><dc:creator>hvassbotn</dc:creator><description>Very interesting topic and a great post!&lt;br&gt;&lt;br&gt;&amp;quot;We can go into details of polymorphic dispatch sites in another blog entry if there is interest.&amp;quot;&lt;br&gt;&lt;br&gt;There is! ;)&lt;br&gt;&lt;br&gt;It would also be interesting to read about:&lt;br&gt;&lt;br&gt;- How this dynamic code-stub dispatching mechanism differes from the .NET 1.x table-based dispatch (IIRC)&lt;br&gt;- Why you chose to select this design? Why change away from the 1.x mechanism?&lt;br&gt;- How interface dispatch performance differs from 1.x and differs from delegate invokation&lt;br&gt;&lt;br&gt;/Hallvard Vassbotn&lt;br&gt;&lt;br&gt;</description></item><item><title>Performance Quiz #9 -- extra innings due to dispatch stubs</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#557442</link><pubDate>Wed, 22 Mar 2006 04:04:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:557442</guid><dc:creator>Rico Mariani's Performance Tidbits</dc:creator><description>Well you'll recall that in the Performance Quiz #9 solution&amp;amp;amp;nbsp;there was a surprising result where...</description></item><item><title>Passion is like genius; a miracle. &amp;raquo; How to call methods more efficiently in dynamic language</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#768230</link><pubDate>Sat, 23 Sep 2006 21:42:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:768230</guid><dc:creator>Passion is like genius; a miracle. » How to call methods more efficiently in dynamic language</dc:creator><description>PingBack from &lt;a rel="nofollow" target="_new" href="http://mkseo.pe.kr/blog/?p=1621"&gt;http://mkseo.pe.kr/blog/?p=1621&lt;/a&gt;</description></item><item><title>Performance Quiz #9 -- extra innings due to dispatch stubs</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#1518796</link><pubDate>Wed, 24 Jan 2007 05:24:31 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1518796</guid><dc:creator>Rico Mariani's Performance Tidbits</dc:creator><description>&lt;p&gt;Well you'll recall that in the Performance Quiz #9 solution there was a surprising result where Test7&lt;/p&gt;
</description></item><item><title>re: Digging into interface calls in the .NET Framework:  Stub-based dispatch.</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#8385328</link><pubDate>Sat, 12 Apr 2008 17:25:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8385328</guid><dc:creator>qwertie</dc:creator><description>&lt;p&gt;I have always wondered how the performance of calling through an interface differs from virtual calls. Are there any possible performance penalties of calling interfaces when there is a complex inheritance hierarchy of interfaces, or when one object implements multiple generic interfaces of the same basic type (e.g. class Foo : IFoo&amp;lt;int&amp;gt;, IFoo&amp;lt;string&amp;gt;)? What about calling methods of a struct through an interface?&lt;/p&gt;</description></item><item><title>re: Digging into interface calls in the .NET Framework:  Stub-based dispatch.</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#8394515</link><pubDate>Mon, 14 Apr 2008 23:27:23 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8394515</guid><dc:creator>vancem</dc:creator><description>&lt;p&gt;For the most part, dispatch performace is independent of the complexity of the inheritance hierarchy. &amp;nbsp;There are differences between interfaces an 'normal' virtual as mentioned in the article, but the fact the complexity of the inheritance does not really matter (or if they are generic).&lt;/p&gt;
&lt;p&gt;Calling interfaces defined on structs is an interesting case. &amp;nbsp; Because structs don't support inheritance, you typically know its exact type, in which case it is not even a virtual dispatch (just a normal call). &amp;nbsp;If you have cast the struct to an object, you have BOXed it (copied it to the GC heap as an object), in which case the dispatch is much like any other object. &amp;nbsp; &amp;nbsp;&lt;/p&gt;
</description></item><item><title>JIT Optimizations</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#8499988</link><pubDate>Tue, 13 May 2008 14:54:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8499988</guid><dc:creator>Ars programatica</dc:creator><description>&lt;p&gt;Čl&amp;#225;nek JIT Optimizations na popul&amp;#225;rn&amp;#237;m serveru CodeProject nab&amp;#237;z&amp;#237; celkem pěkn&amp;#253; a podrobn&amp;#253; pohled na to,&lt;/p&gt;
</description></item><item><title> Vance Morrison s Weblog Digging into interface calls in the NET | Quick Diets</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#9722853</link><pubDate>Wed, 10 Jun 2009 06:25:49 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9722853</guid><dc:creator> Vance Morrison s Weblog Digging into interface calls in the NET | Quick Diets</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://quickdietsite.info/story.php?id=4901"&gt;http://quickdietsite.info/story.php?id=4901&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>CLR Injection ?????? ??????. | blog.zerople();</title><link>http://blogs.msdn.com/vancem/archive/2006/03/13/550529.aspx#9799638</link><pubDate>Tue, 23 Jun 2009 18:39:41 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9799638</guid><dc:creator>CLR Injection ?????? ??????. | blog.zerople();</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://www.pimslog.com/2009/06/clr-injection-%ea%b4%80%eb%a0%a8-%eb%a7%81%ed%81%ac/"&gt;http://www.pimslog.com/2009/06/clr-injection-%ea%b4%80%eb%a0%a8-%eb%a7%81%ed%81%ac/&lt;/a&gt;&lt;/p&gt;
</description></item></channel></rss>