I used reflector to view the code of the generic dictionary collection (Dictionary<TKey, TValue>) and modified that code to make it thread safe. I want to post this code on my blog so others can review it (and tell me if I did something wrong) and also use it in their projects if they want. Legally speaking, am I allowed to do so? I modified the original code heavily (and only took a few methods from the original code not the whole thing) but the base code is still the same, could be there any potential legal issues if I do this?
Note: Just in case some will point me to implementations of a thread safe dictionary, I know that there are already implementations of a thread safe dictionary using ReaderWriterLockSlim but I don't want any locking when reading (only when writing), besides I'm using .net 2.0 not 3.5 so I can't use ReaderWriterLockSlim anyway, also I read somewhere that the performance of ReaderWriterLock in 2.0 is very poor so I don't want to use that.