chiark / gitweb /
Document the `pool' interface.
[mLib] / man / mLib.3
index cb5ee4ac42658e658d3cfed7f025c3b1655b278d..fc1009625c39d0d532f6fd1ad4941d99cd652920 100644 (file)
@@ -39,6 +39,12 @@ module, and stands alone.  It's used mainly by the memory allocation
 modules to raise exceptions when there's no more memory to be had.
 .SS "Memory allocation"
 The
+.BR arena (3)
+module provides an abstraction of memory allocation.  By writing
+appropriate arena implementations, a client program can control where
+and how memory is allocated for various structures.
+.PP
+The
 .BR alloc (3)
 module provides simple veneers onto traditional memory allocation
 functions like
@@ -50,7 +56,9 @@ and
 doesn't actually depend on
 .B strdup
 being defined in the library) which raise exceptions when there's not
-enough memory left.
+enough memory left.  These work through the
+.B arena
+layer, so that the caller can control memory allocation.
 .PP
 The
 .BR sub (3)
@@ -64,6 +72,12 @@ The
 .B track
 module (not yet documented) is a simple memory allocation tracker.  It
 can be handy when trying to fix memory leaks.
+.PP
+The
+.BR pool (3)
+module maintains resource pools which can manage memory and other
+resources, all of the resources held in a pool being destroyed along
+with the pool itself.
 .SS "String handling"
 The
 .BR str (3)