bdwgc
sgcl
bdwgc | sgcl | |
---|---|---|
14 | 14 | |
2,795 | 140 | |
- | - | |
9.7 | 7.4 | |
3 days ago | 18 days ago | |
C | C++ | |
GNU General Public License v3.0 or later | zlib License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
bdwgc
-
Writing a Simple Garbage Collector in C (2020)
Boehm GC is mentioned in the article: https://github.com/ivmai/bdwgc
- Boehm-Demers-Weiser Garbage Collector
- Sound like some C stuff
-
Tricking the garbage collector with unsigned longs?
This stuff is all implementation dependent. The Boehm garbage collector has been wrestling with the compilers for years regarding these issues, see its development repo.
-
Any good resources to learn how to implement Automated Reference Counting in C99?
Any kind of automatic GC is going to be rare in C. The only automatic garbage collection that I am aware of is the BDW garbage collector abet that uses mark and sweep instead of reference counting https://github.com/ivmai/bdwgc
- Why isn't there a GCed variant of C++ that'd be functionally like Java, but with C++'s syntax?
-
Small (EXPERIMENTAL RESEARCH) project I made to add a reference counter GC to clang (specifically clang, will change) C
My dude have you heard of Boehm GC
sgcl
-
Garbage Collection for Systems Programmers
The SGCL repository contains the source code for this benchmark that uses the tracked pointers: https://github.com/pebal/sgcl/blob/main/examples/treap/treap...
- SGCL: A real-time Garbage Collector for C++
-
Boehm Garbage Collector
You can look at the SGCL garbage collector for C++: https://github.com/pebal/sgcl. It works in a separate thread, is locks-free and never stops the world.
-
The missing C++ smart pointer
It will never be called gc_ptr because C++ programmers have an allergy to the term GC. However, an attempt was made to implement a similar solution. Take a look at tracked_ptr: https://github.com/pebal/sgcl
-
Boehm-Demers-Weiser Garbage Collector
SGCL is a real-time garbage collector for C++ without any pauses.
https://github.com/pebal/sgcl
-
Now the C++ removed garbage collector support, is it still possible the have a global garbage collector in a C++ application?
Removed GC support was useless. You can have GC pointers in C++.
-
The Year of C++ Successor Languages
Mutators are threads that allocate memory and manipulate pointers, they can work completely independently of the GC. A mutator needs only to tag an object when copies or moves a pointer to this object. The GC detects this tag and marks the object as alive. Here is a working implementation for C++: https://github.com/pebal/sgcl
-
Optimizing Concurrent Mark&Sweep latency? What are the ways?
I don't know Rust but you can have a pauseless GC in C++. You just need to provide asynchronous access to root pointers.
- SGCL: Real-time garbage collector for C++
What are some alternatives?
nixos-flake-example - This is a demo NixOS config, with optional flakes support. Along with notes on why flakes is useful and worth adopting.
rune - Rune is a programming language developed to test ideas for improving security and efficiency.
mmtk-core - Memory Management ToolKit
valuable - A C++ smart-pointer with value-semantics 💎
kcgi - minimal CGI and FastCGI library for C/C++
gcpp - Experimental deferred and unordered destruction library for C++
VulkanMemoryAllocator - Easy to integrate Vulkan memory allocation library
nottinygc - Higher-performance allocator for TinyGo WASI apps
lisp - A mini Lisp in 1k lines of C with garbage collector, explained. Includes over 40 built-in Lisp primitives, floating point, strings, closures with lexical scope, macros, proper tail recursion, exceptions, execution tracing, file loading, a mark-sweep/compacting garbage collector and REPL.
kit - not-in-progress compiler for Windows/Linux/macOS
reproc - A cross-platform (C99/C++11) process library
aplette - This is a new take on an old language: APL. The goal is to pare APL down to its elegant essence. This version of APL is oriented toward scripting within a Unix-style computing environment.