From 2394bc755a0b129e48b6ee7f83adc975c38edf6e Mon Sep 17 00:00:00 2001 From: Bastien Nocera Date: Wed, 18 Dec 2019 12:52:27 +0100 Subject: [PATCH] docs: Add full code example for GMemoryMonitor --- gio/gmemorymonitor.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gio/gmemorymonitor.c b/gio/gmemorymonitor.c index d0c9cfb0d..4368ee3c5 100644 --- a/gio/gmemorymonitor.c +++ b/gio/gmemorymonitor.c @@ -50,6 +50,29 @@ * * See #GMemoryMonitorWarningLevel for details on the various warning levels. * + * |[ + * static void + * warning_cb (GMemoryMonitor *m, GMemoryMonitorWarningLevel level) + * { + * g_debug ("Warning level: %d", level); + * if (warning_level > G_MEMORY_MONITOR_WARNING_LEVEL_LOW) + * drop_caches (); + * } + * + * static GMemoryMonitor * + * monitor_low_memory (void) + * { + * GMemoryMonitor *m; + * m = g_memory_monitor_dup_default (); + * g_signal_connect (G_OBJECT (m), "low-memory-warning", + * G_CALLBACK (warning_cb), NULL); + * return m; + * } + * ]| + * + * Don't forget to disconnect the #GMemoryMonitor::low-memory-warning + * signal, and unref the #GMemoryMonitor itself when exiting. + * * Since: 2.64 */