C
Colelee
Guest
class Program
{
static void Main(string[] args)
{
for (var i = 0; i < 10000000; i++)
{
var t = BuildType($"A{i}", $"B{i}");
GC.Collect();
}
Console.WriteLine("Hello World!");
}
public static Type BuildType(string className, string moduleName)
{
var myAsmName = new AssemblyName();
myAsmName.Name = "MyDynamicAssembly";
AssemblyBuilder myAsmBuilder = AssemblyBuilder.DefineDynamicAssembly(myAsmName,
AssemblyBuilderAccess.RunAndCollect);
var myModBuilder = myAsmBuilder.DefineDynamicModule(moduleName);
var myTypeBuilder = myModBuilder.DefineType(className, TypeAttributes.Public);
Type ret = myTypeBuilder.CreateTypeInfo();
return ret;
}
}
.net core 3.0 debug will fault, if ctrl + F5 will ok, .net core 2.2 will ok for both debug and ctrl + f5.
![1500038.png 1500038.png](https://www.computerhelp.forum/data/attachments/56/56768-4e8e94f11995b235e149e0f5ae2c2c12.jpg?hash=To6U8RmVsj)
Continue reading...
{
static void Main(string[] args)
{
for (var i = 0; i < 10000000; i++)
{
var t = BuildType($"A{i}", $"B{i}");
GC.Collect();
}
Console.WriteLine("Hello World!");
}
public static Type BuildType(string className, string moduleName)
{
var myAsmName = new AssemblyName();
myAsmName.Name = "MyDynamicAssembly";
AssemblyBuilder myAsmBuilder = AssemblyBuilder.DefineDynamicAssembly(myAsmName,
AssemblyBuilderAccess.RunAndCollect);
var myModBuilder = myAsmBuilder.DefineDynamicModule(moduleName);
var myTypeBuilder = myModBuilder.DefineType(className, TypeAttributes.Public);
Type ret = myTypeBuilder.CreateTypeInfo();
return ret;
}
}
.net core 3.0 debug will fault, if ctrl + F5 will ok, .net core 2.2 will ok for both debug and ctrl + f5.
![1500038.png 1500038.png](https://www.computerhelp.forum/data/attachments/56/56768-4e8e94f11995b235e149e0f5ae2c2c12.jpg?hash=To6U8RmVsj)
Continue reading...