2014-10-27 39 views
0

我XBMC附加元件產生大量的日誌警告的潛在內存泄漏:XBMC附加元件內存泄漏

13時49分02秒T:139712465467136警告:CPythonInvoker(12,/home/test/.xbmc/addons/script .testplugin/default.py):python腳本「/home/test/.xbmc/addons/script.testplugin/default.py」在內存中留下了幾個我們無法清理的類。這些類包括:N14PythonBindings42XBMCAddon_xbmcgui_WindowXMLDialog_DirectorE,N9XBMCAddon7xbmcgui12ControlLabelE,N9XBMCAddon7xbmcgui12ControlLabelE,N9XBMCAddon7xbmcgui8ListItemE

是什麼原因導致這個警告,我怎麼能避免呢?

回答

1

您是否在插件代碼中創建並使用了xbmcaddon.Addon類的子類?

它看起來像Kodi/XBMC可能有清理xbmcaddon.Addon類的子類的問題。我注意到,一旦我創建了這樣的子類的實例,我就開始接收來自CPythonInvoker的類似於你的警告消息。

sys.getrefcount(instanceOfMySubclass)在我的子類的實例被創建後立即給我4個引用。用del刪除子類顯然會從當前範圍中刪除對子類的引用,但不清楚它是否也刪除了其他3個引用。也許其他的引用是CPythonInvoker抱怨「我們無法清理的內存中的幾個類」。

就我而言,只要我停止使用xbmcaddon.Addon的子類,警告消息就消失了。