-fixed stack-overflow error

This commit is contained in:
Mergul 2019-06-18 13:57:31 +02:00
parent 1396d0bf85
commit 9824b587fb
3 changed files with 38 additions and 15 deletions

View file

@ -1,5 +1,8 @@
module tests.tests;
import std.experimental.allocator;
import std.experimental.allocator.mallocator;
import ecs.entity;
import ecs.events;
import ecs.manager;
@ -136,8 +139,10 @@ struct ChangeTestSystem
void onAddEntity(EntitiesData data)
{
//printf("Entity added! ID: ");
foreach (i; 0 .. data.length)
writeln("Entity added! ID: ", data.entites[i].id.id);
printf("Entity added! ID: %u\n",data.entites[i].id.id);
//writeln("Entity added! ID: ", data.entites[i].id.id);
}
void onRemoveEntity(EntitiesData data)
@ -532,7 +537,7 @@ int main()
//foreach(i; 0..1_000_000)gEM.removeEntity(gEM.addEntity(tmpl).id);
EntityID[5000] idss;
EntityID[] idss = Mallocator.instance.makeArray!EntityID(5000);//[5000]
foreach (i; 0 .. 200)
{
@ -575,10 +580,12 @@ int main()
time = MonoTime.currTime;
EntityID[] entities = Mallocator.instance.makeArray!EntityID(1_000_000);
foreach (i; 0 .. 500_000)
{
entity2 = gEM.addEntity(tmpl);
gEM.addEntity(tmpl2);
entities[i*2] = entity2.id;
entities[i*2+1] = gEM.addEntity(tmpl2).id;
}
gEM.commit();
@ -587,6 +594,20 @@ int main()
time = MonoTime.currTime;
foreach (i; 0 .. 1_000_000)
{
EntityManager.instance.addComponents(entities[i],TestComp5());
//if((i & 0x00FFFF) == 0)gEM.commit();
}
gEM.commit();
dur = (MonoTime.currTime - time).total!"usecs";
writeln("Components adding: ", dur, " usecs");
Mallocator.instance.dispose(entities);
time = MonoTime.currTime;
gEM.begin();
//gEM.updateMT();
gEM.update();