Cooperative Fiber Mode Sample – Day 1

Well it’s been a while since I’ve blogged…  There’ve been a few distractions, starting with Beta 1, then vacation, and now things are back to normal.  So it seems reasonable to blog about something that we’ve just shipped in Whidbey Beta 1: The cooperative fiber mode sample that’s been included in the SDK.  You can…

8

IronPython, MS SQL, and PEP 249

Over the past week and a half I’ve spent a little bit of time getting Django 0.96.1 running on IronPython.  The 1st step in doing this was getting a database provider that would run on .NET that would work with Django.  For DB backends Django basically follows PEP 249 with a few extensions.  Here’s the…

6

.NET Trivia

Here’s a fun piece of .NET trivia involving thread aborts and exception handling.  What does the following code do?  And why does it do it?   using System; using System.Threading;   class TATest {         public static void Main(string []args)         {                 try                 {                         Console.WriteLine(“Aborting!”);                         Thread.CurrentThread.Abort();                 }                 finally                 {                         if((Thread.CurrentThread.ThreadState & ThreadState.AbortRequested)!=0)                         {…

5

Cooperative Fiber Mode Sample – Day 9

The managed Fiber class exists in its own directory in the SDK sample appropriately called Fiber.  The Fiber class is designed to be vaguely similar to the managed Thread class.  For example, like the Thread has ThreadState the fiber has FiberStates.   The managed fiber class exposes a few significant APIs: ·        public static Fiber…

4

Fiber mode is gone…

Well, now that our RTM and RC-esque builds are starting to make it out into the wild it seems like a good time to discuss a feature we had to make go away… That feature which most readers of my blog are probably now familiar with is fiber mode.  So why did we cut fiber…

3

Inaugural Blog

Welcome to my blog. Yes, that’s right; you’re reading YAIB (Yet another Inaugural Blog). So, who am I, and why should you care? My name is Robert “Dino” Viehland (as in everyone calls me Dino, except for people who knew me in high school or before. E.g. parents, old friends, etc… So this is the…

2

On Performance

Ahh, performance…  It’s so much fun!  It’s easy to measure and as you work on it you can see immediate benefits (or not!).  I personally enjoy getting to spend time looking at interesting performance issues and I’ll use this as a time to plug IronPython 2.6 Beta 1 where we’ve continued our focus in this…

2

Announcing Python Tools for Visual Studio 1.0

As you can see from Soma’s blog on Monday we released Python Tools for Visual Studio 1.0.  Of course I’m excited about this release as it’s been the 1st stable release I’ve put since IronPython 2.6 (and the first blog too!).  This release of PTVS focuses on a combination of the core IDE experience (intellisense,…

2

Cooperative Fiber Mode Sample – Day 2

In the last blog entry I went over how we start the runtime.  Once it was loaded we were running managed code, but I glossed over the managers that were present and participating in running the system.  Today we start off with CHostControl::GetHostManager.  CHostControl is CoopFiber’s implementation of IHostControl, and GetHostManager is the only API…

1

IronPython 2.6 Released!

I’ve very happy to announced that we’ve officially released IronPython 2.6!  This is a great release which brings us up to date with the stable CPython 2.x branch, greatly improves startup time performance, continues to improve our support for deep .NET integration, adds major new features like pdb and sys.settrace support, and as usual we’ve…

1