Hello, 

Please review a performance optimization for HttpRequest.Headers and
HttpRequest.ServerVariables collections.
It implements lazy collection fill because most common flow is to ask
for value by name. Only if user ask for enumerator or count, collection
will be fully loaded.
This gives about 25% performance improvement on common flow.

This causes one test case to fail:
MonoTests.System.Web.Test_HttpFakeRequest.Test_EmptyUnknownRow :
NullReferenceException was expected,
in my opinion this test is incorrect, and should be removed, because it
tests undocumented behavior that may depend on implementation.

Vladimir        

Attachment: ServerVariablesCollection.cs.patch
Description: ServerVariablesCollection.cs.patch

Attachment: WebROCollection.cs.patch
Description: WebROCollection.cs.patch

Attachment: BaseParamsCollection.cs.patch
Description: BaseParamsCollection.cs.patch

Attachment: HeadersCollection.cs.patch
Description: HeadersCollection.cs.patch

Attachment: HttpRequest.cs.patch
Description: HttpRequest.cs.patch

Attachment: System.Web.dll.sources.patch
Description: System.Web.dll.sources.patch

_______________________________________________
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list

Reply via email to