System.Reflection.Emit中的慢类型创建

时间:2012-05-17 14:25:19

标签: c# .net .net-2.0 system.reflection

我正在开发一个项目,需要大量使用System.Reflection.Emit来发出源代码的编译版本,但是,当我发出整个东西时,我注意到它很慢(我只是已经发出一部分用于测试)。也就是说,为946种类型调用“TypeBuilder.CreateType()”方法花费超过75秒,我将部分地将其归结为我正在发出的大量数据,这是一个3.01mb dll,在反编译时扩展为60mb文件与ILDasm。

现在,这个数据的剩余发射过程总共需要大约40秒(并且那些40秒包括发出相当多的调试数据)所以我想知道为什么这个单独的方法需要花费这么多时间。有人知道吗?我有什么方法可以减少这个时间吗?

0 个答案:

没有答案