Monday 2 February 2009

VB.10: Yield to the pressure and give us enumerators!

Unless you have been under a rock for sometime, you would have heard about the amazingly powerful CCR (Concurrent Coordination Runtime) from the robotics group in Microsoft.

In my case in particular, I could see the CCR making significant performance improvements to my current work project.  But there is a catch.  VB.net (3.5 SP1) does not support the 'Yield' keyword that C# has had since 2.0.

CCR uses some nifty manipulation of the enumerator pattern to make asynchronous code appear to be sequential.  An essential part of this ability comes from the usage of the Yield keyword.  The C# compiler reads the enumerator class and converts it into a State machine.  Long story short - it is quite a clever approach.

VB.net Team, please hear our cry.... Add the Yield command please!

https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=381572

1 comment:

NickG said...

Hi, I left a response to your SqlConnection/Ccr question on stackoverflow. Hope it helps.