![]() |
Show Changes |
![]() |
Edit |
![]() |
|
![]() |
Recent Changes |
![]() |
Subscriptions |
![]() |
Lost and Found |
![]() |
Find References |
![]() |
Rename |
![]() |
Administration Page |
| Search |
History
| 11/10/2008 6:35:31 AM |
| JohnDavidson |
| 11/1/2008 5:44:49 AM |
| FLWCOM-jwdavidson |
| 10/31/2008 7:32:52 PM |
| FLWCOM-jwdavidson |
| 10/31/2008 7:32:13 PM |
| FLWCOM-jwdavidson |
| 10/31/2008 7:23:31 PM |
| FLWCOM-jwdavidson |
![]() |
List all versions |
| Start New Thread | Collapse Sub Threads | Open All Threads |
FLWCOM-jwdavidson Saturday, November 01, 20085:56:57 AM
This will serve as the start of a trial for using the Threaded Forum format inside FlexWiki as a partial replacement for the flexwiki-user maillist hosted by SourceForge. There have been a number of issues with the SourceForge based maillists and it is hoped that this medium will be able to provide adequate replacement and maybe even provide a number of new features not possible in a maillist.
The various forum will have Atom feeds attached to the main topic for that forum, which should make it easier to follow discussions.
Reply To ThisChris - 88.174.190.192 Thursday, November 06, 20082:10:06 AM
Hi
We solved 2 bugs with the TypeRegistry class in v2.1.0.270:
1. An instance of TypeRegistry was created on each request (or even more - can't remember). The issue is that each instance is going to parse all exported Types of all loaded assemblies, which is very slooooow. Solution: we made the TypeRegistry a singleton class (and modified the BELType and ExecutionContext classes accordingly).
private static TypeRegistry _instance;
private TypeRegistry()
{}
static TypeRegistry()
{
_instance = new TypeRegistry();
}
public static TypeRegistry Instance
{
get { return _instance; }
}
2. In the RegisterTypesFromAssembly method, calling GetExportedTypes throw an exception when the assembly is dynamic (the exception is caught, but that's slow). Solution is to add that test:
// Let's try to exclude dynamic assemblies - this way,
// we avoid going into the (slow) catch below.
Module[] allMod = a.GetModules();
if (allMod.Length != 0 && // Is (Length==0) possible?
allMod[0] is System.Reflection.Emit.ModuleBuilder)
return;
Regards
Chris
www.aulofee.com - Infrastructure and Security Supervision, Event Correlation
Reply To ThisFLWCOM-jwdavidson Thursday, November 06, 20086:56:44 AM
Thanks Chris
The improvement is in build 2.1.0.287
Converted TypeRegistry class to a Singleton and added some checks in RegisterTypesFromAssembly to reduce caught errors. Changed BELType and ExecutionContext classes for calls to TypeRegistry.
Execution time for Unit Tests was reduce by 5 seconds from 85 secs to < 80 secs.
Topic generation times were generally improved: