util: fix DebugMem helper
```
28.99 | I | util.DebugMem | Start memscan
29.10 | E | plugin.Plugins |
Traceback (most recent call last):
File "...\electrum\util.py", line 405, in run_jobs
job.run()
File "...\electrum\util.py", line 376, in run
self.mem_stats()
File "...\electrum\util.py", line 368, in mem_stats
if isinstance(obj, class_):
File "...\Python310\lib\abc.py", line 119, in __instancecheck__
return _abc_instancecheck(cls, instance)
File "...\electrum\simple_config.py", line 609, in __getattribute__
raise AttributeError()
AttributeError
```
This commit is contained in:
@@ -59,7 +59,7 @@ class ElectrumGui(BaseElectrumGui, Logger):
|
||||
self.logger.info("CWD=%s" % os.getcwd())
|
||||
# Uncomment this call to verify objects are being properly
|
||||
# GC-ed when windows are closed
|
||||
#network.add_jobs([DebugMem([Abstract_Wallet, SPV, Synchronizer,
|
||||
#plugins.add_jobs([DebugMem([Abstract_Wallet, SPV, Synchronizer,
|
||||
# ElectrumWindow], interval=5)])
|
||||
|
||||
if hasattr(Qt, "AA_ShareOpenGLContexts"):
|
||||
|
||||
@@ -147,7 +147,7 @@ class ElectrumGui(BaseElectrumGui, Logger):
|
||||
self.logger.info(f"Qt GUI starting up... Qt={QtCore.QT_VERSION_STR}, PyQt={QtCore.PYQT_VERSION_STR}")
|
||||
# Uncomment this call to verify objects are being properly
|
||||
# GC-ed when windows are closed
|
||||
#network.add_jobs([DebugMem([Abstract_Wallet, SPV, Synchronizer,
|
||||
#plugins.add_jobs([DebugMem([Abstract_Wallet, SPV, Synchronizer,
|
||||
# ElectrumWindow], interval=5)])
|
||||
if hasattr(QtCore.Qt, "AA_ShareOpenGLContexts"):
|
||||
QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_ShareOpenGLContexts)
|
||||
|
||||
@@ -365,7 +365,11 @@ class DebugMem(ThreadJob):
|
||||
objmap = defaultdict(list)
|
||||
for obj in gc.get_objects():
|
||||
for class_ in self.classes:
|
||||
if isinstance(obj, class_):
|
||||
try:
|
||||
_isinstance = isinstance(obj, class_)
|
||||
except AttributeError:
|
||||
_isinstance = False
|
||||
if _isinstance:
|
||||
objmap[class_].append(obj)
|
||||
for class_, objs in objmap.items():
|
||||
self.logger.info(f"{class_.__name__}: {len(objs)}")
|
||||
|
||||
Reference in New Issue
Block a user