Replace time-based GC with allocation-count trigger, migrate all Create factories to GCList::Create(), fix VFSPath root path, reorder TObject variant
All checks were successful
Build and Deploy on Tag / 🔨 Build for PowerPC (push) Successful in 1m14s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-riscv64:latest, riscv64-linux-gnu, riscv64) (push) Successful in 3m41s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-x64:latest, x86_64-linux-gnu, amd64) (push) Successful in 3m40s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-arm:latest, arm-linux-gnueabihf, arm7) (push) Successful in 3m43s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-arm64:latest, aarch64-linux-gnu, arm64) (push) Successful in 3m43s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-x86:latest, i386-linux-gnu, 386) (push) Successful in 55s
Build and Deploy on Tag / update-tap (push) Successful in 4m25s
All checks were successful
Build and Deploy on Tag / 🔨 Build for PowerPC (push) Successful in 1m14s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-riscv64:latest, riscv64-linux-gnu, riscv64) (push) Successful in 3m41s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-x64:latest, x86_64-linux-gnu, amd64) (push) Successful in 3m40s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-arm:latest, arm-linux-gnueabihf, arm7) (push) Successful in 3m43s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-arm64:latest, aarch64-linux-gnu, arm64) (push) Successful in 3m43s
Build and Deploy on Tag / 🔨 Build for everything else (git.tesses.org/tesses50/linux-x86:latest, i386-linux-gnu, 386) (push) Successful in 55s
Build and Deploy on Tag / update-tap (push) Successful in 4m25s
This commit is contained in:
@@ -113,9 +113,8 @@ void GC::Start() {
|
|||||||
this->thrd = new Thread([this]() -> void {
|
this->thrd = new Thread([this]() -> void {
|
||||||
while (this->IsRunning()) {
|
while (this->IsRunning()) {
|
||||||
this->BarrierBegin();
|
this->BarrierBegin();
|
||||||
while (this->allocs < ALLOC_THRESHOLD)
|
while (this->IsRunning() && (this->allocs < ALLOC_THRESHOLD))
|
||||||
this->cond.Wait(
|
this->cond.Wait(&this->mtx);
|
||||||
&this->mtx); // your wrapper around pthread_cond_wait
|
|
||||||
this->allocs = 0;
|
this->allocs = 0;
|
||||||
std::vector<THeapObject *> to_delete;
|
std::vector<THeapObject *> to_delete;
|
||||||
this->Collect(to_delete);
|
this->Collect(to_delete);
|
||||||
|
|||||||
Reference in New Issue
Block a user