From 9ae00f2005dbac17056e5270d93f1ed27f4694ac Mon Sep 17 00:00:00 2001 From: rridvancelebi Date: Mon, 4 Nov 2024 20:50:49 +0300 Subject: [PATCH] Create decorators_ridvan_celebi.py --- Week04/decorators_ridvan_celebi.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 Week04/decorators_ridvan_celebi.py diff --git a/Week04/decorators_ridvan_celebi.py b/Week04/decorators_ridvan_celebi.py new file mode 100644 index 00000000..0cc68707 --- /dev/null +++ b/Week04/decorators_ridvan_celebi.py @@ -0,0 +1,20 @@ +import time +import tracemalloc + +def performance(fn): + def _performance(*args, **kwargs): + if(not hasattr(performance,"counter")): + setattr(performance,"counter",0) + setattr(performance,"total_time",0) + setattr(performance,"mem",0) + performance.counter += 1 + tracemalloc.start() + start_time = time.time() + result = fn(*args, **kwargs) + end_time = time.time() + current,peak = tracemalloc.get_traced_memory() + tracemalloc.stop() + performance.total_mem = peak + performance.total_time += end_time-start_time + return result + return _performance