For those that followed the Long Path in .NET series that Kim Hamilton wrote a while back, you will be pleased to know that we just released a library over on CodePlex that adds Long Path support to .NET. This project is one of four new experimental projects + source that we released on our new BCL CodePlex site:
BigRational
BigRational builds on the BigInteger introduced in .NET Framework 4 to create an arbitrary-precision rational number class.
Long Path
This library provides functionality to make it easier to work with paths that are longer than the current 259 character limit.
PerfMoniter
PerfMonitor is a command-line tool for profiling the system using Event Tracing for Windows (ETW). PerfMonitor is built on top of the TraceEvent library.
TraceEvent
An experimental library that greatly simplifies reading Event Tracing for Windows (ETW) events.
Expect to see a lot more of these experimental libraries in the future from the BCL. Play around with them and tell us what you think.
The maximum number of static fields allowed in mscorlib?
1020
Yep you read that right, an arbitrary 1020, not even a computer-scientisty power-of-2, like 1024. Static fields are scoped per AppDomain and this limitation is hardcoded in the native implementation of that class. Check out the Rotor source if you are interested (search for STATIC_OBJECT_TABLE_BUCKET_SIZE):
sscli20\sscli20\clr\src\vm\AppDomain.cpp
Have a guess how a colleague of mine, Brian Grunkemeyer, found this out today…
(This limitation is only in mscorlib – other assemblies do not have a limitation, or rather, have an insanely high limit that you should never hit)