From 8c9a97f4cf9f8d55d48981f3d7170f27ce853ce5 Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Tue, 14 Jun 2011 16:26:53 -0600 Subject: Add Timers to Python module. --- libdimension/dimension/timer.h | 2 ++ libdimension/timer.c | 5 ++++- 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'libdimension') diff --git a/libdimension/dimension/timer.h b/libdimension/dimension/timer.h index 0a1fde9..bd72a90 100644 --- a/libdimension/dimension/timer.h +++ b/libdimension/dimension/timer.h @@ -28,6 +28,8 @@ typedef struct dmnsn_timer { double real; /**< Wall-clock time. */ double user; /**< Time spent executing. */ double system; /**< Time spent waiting for the system. */ + + dmnsn_refcount refcount; /**< @internal Reference count. */ } dmnsn_timer; /** A standard format string for timers. */ diff --git a/libdimension/timer.c b/libdimension/timer.c index 0e120ce..ad0fd9b 100644 --- a/libdimension/timer.c +++ b/libdimension/timer.c @@ -30,6 +30,7 @@ dmnsn_new_timer(void) { dmnsn_timer *timer = dmnsn_malloc(sizeof(dmnsn_timer)); dmnsn_get_times(timer); + timer->refcount = 1; return timer; } @@ -46,5 +47,7 @@ dmnsn_complete_timer(dmnsn_timer *timer) void dmnsn_delete_timer(dmnsn_timer *timer) { - dmnsn_free(timer); + if (DMNSN_DECREF(timer)) { + dmnsn_free(timer); + } } -- cgit v1.2.3