• 3904阅读
  • 0回复

如何强制QPluginLoader unload? [复制链接]

上一主题 下一主题
离线zhongzhu
 

只看楼主 倒序阅读 楼主  发表于: 2009-09-15
如下代码, 如果iUprade->performUpgrade()已经死掉了,如何才能强制unload plugin呢?我试过保存loader为全局变量,然后在一个slot里面loader->unload(),结果程序crash了.
QPluginLoader  *loader;
...
...

loader = new QPluginLoader (dir.absoluteFilePath(fileName));
QObject *plugin = loader->instance();

if (plugin)
{
UpgradeInterface * iUpgrade = qobject_cast<UpgradeInterface *>(plugin);
if (iUpgrade)
{
iUpgrade->performUpgrade(); }

loader->unload();
}
}

快速回复
限100 字节
 
上一个 下一个