Replace time-based GC with allocation-count trigger, migrate all Create factories to GCList::Create(), fix VFSPath root path, reorder TObject variant

This commit is contained in:
2026-09-01 06:04:58 -05:00
parent 2430b62232
commit c1c3d02bf0
8 changed files with 25 additions and 42 deletions
+2 -2
View File
@@ -2292,9 +2292,9 @@ bool InterperterThread::ExecuteMethod2(std::shared_ptr<GC> gc, TObject instance,
}
if (key == "RegisterClass") {
if ((myEnv->permissions.canRegisterEverything ||
myEnv->permissions.canRegisterClass) &&
myEnv->permissions.canRegisterZeClass) &&
!rootEnv->permissions.locked)
TStd::RegisterClass(gc, rootEnv);
TStd::RegisterZeClass(gc, rootEnv);
cse.back()->Push(gc, nullptr);
return false;
}
+1 -4
View File
@@ -2,9 +2,7 @@
#include <chrono>
#include <iostream>
#include <time.h>
#if defined(_WIN32)
#include <windows.h>
#else
#if !defined(_WIN32)
#include <unistd.h>
#endif
@@ -85,7 +83,6 @@ TDictionary *CreateThread(GCList &ls, TCallable *callable, bool detached) {
TObject cb = th->callable->Call(ls, {});
gc->BarrierBegin();
th->returnValue = cb;
std::map<pthread_t, int> mt;
#if defined(GEKKO) || defined(_EE)
current_funcs_mtx.Lock();
current_funcs.erase(pthread_self());