aboutsummaryrefslogtreecommitdiff
path: root/ModuleManager.py
diff options
context:
space:
mode:
authorGravatar jesopo2018-09-01 18:49:50 +0100
committerGravatar jesopo2018-09-01 18:49:50 +0100
commit164f0b0bbf0555436ab161f9bcb47ccc28c280cf (patch)
tree892f4491dfe4a3fb61c55419ab8bf2a416ccc005 /ModuleManager.py
parentDon't purge children on purge_context() in EventHook, make event_context (diff)
signature
Log when a module is unloaded, including how many references are left to the
module object
Diffstat (limited to 'ModuleManager.py')
-rw-r--r--ModuleManager.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/ModuleManager.py b/ModuleManager.py
index d2457ae5..e0b5a215 100644
--- a/ModuleManager.py
+++ b/ModuleManager.py
@@ -91,4 +91,10 @@ class ModuleManager(object):
self.events.purge_context(event_context)
del sys.modules[name]
+ references = sys.getrefcount(module)
del module
+ references -= 1 # 'del module' removes one reference
+ references -= 1 # one of the refs is from getrefcount
+
+ self.bot.log.info("Module '%s' unloaded (%d reference%s)",
+ [name, references, "" if references == 1 else "s"])