当前位置: 首页 > 编程日记 > 正文

【Qt】通过QtCreator源码学习Qt(八):插件生命周期及对应状态(代码走读)

1、简介

PluginManager管理插件IPlugin的生命周期,从初始化插件到删除插件共八个状态。插件状态表——PluginSpec::enum State { Invalid, Read, Resolved, Loaded, Initialized, Running, Stopped, Deleted};
插件IPlugin的状态记录在与插件对应的插件说明PluginSpec中,状态切换过程如下:

  • 当new PluginSpec时,还没有插件与之关联,此时PluginSpec记录的插件状态为无效(Invalid);
  • 读取插件文件后,状态切换成已读(Read);
  • 读取全部插件后,首先需要解决插件之间的依赖问题,解决完毕后,状态切换成已解决(Resolved);
  • 然后安装依赖顺序依次加载插件,状态切换成已加载(Loaded);
  • 初始化所有插件,状态切换成已初始化(Initialized);
  • 运行插件,状态切换成正在运行(Running);
  • 当QtCreator退出时,插件依次退出,状态切换成(Stopped);
  • 全部退出后,删除插件,状态切换成(Deleted)。
2、状态管理器PluginManager的初始化

初始化、设置IID、设置settings

相关文章:

第七课 环境变量PATH,cp、mv及查看文档cat/more/less/head/tail命令

一、环境变量(PATH)echo $PATH 查看环境变量的目录PATH$PATH:/tmp/ (目录)给一个目录赋值环境变量; 让以上环境变量永久生效: 编辑 vi /etc/profile/ 把以上参数加入到文本的最后,退出&#x…

asp.net获取页面url参数值的实现代码实例

asp.net获取页面url参数值的实现代码实例 file: default.aspx.cs using system; using system.data; using system.configuration; using system.collections; using system.web; using system.web.security; using system.web.ui; using system.web.ui.webcontrols; using sys…

【Qt】编译QtCreator

一、Ubuntu14.04编译QtCreator 4.0.3 1、准备工作 编译工具要求 Qt >= 5.5.0; g++ >= 4.7; 2、编译步骤 cd <QtCreator源码目录> qmake -r make 3、安装 make install INSTALL_ROOT=<指定目录> 二、Win10编译QtCreator 4.7.1 1、准备工作 编译工具…

Go Pro 半小时上手指南

Jack刚买了台Go Pro 6&#xff0c;商品包装内没有说明书&#xff0c;希望尽快拍那种慢动作或者酷炫的照片&#xff0c;去网上看了些贴都是注重结果&#xff0c;很少讲具体设置或技巧&#xff0c;光靠自己研究什么时候才能入门&#xff1f;《Go Pro 半小时上手指南》为你解决这些…

出身清华,大神朱俊彦再出GauGAN:AI让你变身神笔马良

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑作者 | Just出品 | AI科技大本营&#xff08;ID:rgznai 100&#xff09;一次 TED 演讲中&#xff0c;前锤子科技设计总监罗子雄分享如何入门学设计的经验。要想学好设计&#xff0c;他提醒观众要先看基础实例教程。由于互…

delphi中的第三方控件如何安装 (转)

最佳答案 由于组件提供的方式不同&#xff0c;所以安装的方法也是不一样的&#xff0c;下面就目前常见的各种形式的组 件的安装方法介绍一下。 1只有一个DCU文件的组件。DCU文件是编译好的单元文件&#xff0c;这样的组件是作者不想把源码公 布。一般来说&#xff0c;作…

【Qt】Qt中使用ssl时报错:qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method

一、问题 在Qt中使用https,运行时报错: qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method二、原因分析 SSLv2由于某些漏洞导致的不安全原因, 在某些linux发行版里的openssl库禁用掉了SSLv2 三、解决办法 重新编译openssl 1、下载openssl git clone …

渡鸦创始人离职百度后的下一个“真相”

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑作者 | 琥珀出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;一直以来&#xff0c;渡鸦科技被外界看做是百度一次失败的收购。彼时彼刻&#xff0c;国内外智能音箱市场成为最火爆的兵家必争之地。渡鸦创始人、原…

QuickBI助你成为分析师——数据源FAQ小结

摘要&#xff1a; 添加数据源的时候经常会遇到各种问题&#xff0c;下面来讲解一下常见情况&#xff0c;若仍有疑问扫码咨询哦&#xff01;使用 Quick BI 分析数据时&#xff0c;需要先指定原始数据所在的数据源&#xff0c;测试连通数据源是数据分析的基础&#xff0c;下面让我…

HTML5 学习笔记(一)- video

直到现在&#xff0c;仍然没有一项可以让网页上显示视频的标准。大多数的视频都是通过插件&#xff08;如Flash&#xff09;来实现播放的&#xff0c;但是并不是所有的浏览器拥有同样的插件。 而伟大的HTML5规定了一个元素<video>来实现这种功能。 <video>支持Ogg、…

【Qt】通过QtCreator源码学习Qt(九):容器算法总结

一、简介 本节总结QtCreator中封装的容器算法接口,源码文件的路径src/libs/utils/algorithm.h。 算法接口包括:判断、查找、删除、统计、排序、转换、拆分、过滤 二、算法源码讲解 1、判断 Utils::anyOf、Utils::allOf Utils::anyOf如果容器中有任一符合条件的元素,则返…

今晚8点直播 | 详解聊天机器人落地及进阶实战

近年来&#xff0c;聊天机器人技术及产品得到了快速的发展。聊天机器人作为人工智能技术的杀手级应用&#xff0c;发展得如火如荼&#xff0c;各种智能硬件层出不穷。本次公开课中&#xff0c;AI科技大本营联合电子工业出版社博文视点邀请到上海瓦歌智能科技有限公司总经理&…

webpack源码之tapable

引言 去年3月的时候当时写了一篇webpack2-update之路,到今天webpack已经到了4.2,更新挺快的,功能也在不断的完善,webpack4特性之一就是零配置, webpack生命力真的很顽强,积极跟上环境的变化,响应社区的需求,不断的迭代,因为parcel在其之前就有这个特性了。直接运行webpack命令,…

常用的 linux命令

为什么80%的码农都做不了架构师&#xff1f;>>> 将目录dir1复制成目录dir2 cp -R file1 file2 同时将文件file1、file2、file3与目录dir1复制到dir2 cp -R file1 file2 file3 dir1 dir2 mv dir1 dir2 移动或修改目录名称 rm -rf 删除文件&目录 vi :q! :wq mk…

68款大规模机器学习数据集,涵盖CV、语音、NLP | 十年资源集

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑作者 | 琥珀出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;此前营长为大家分享过不少机器学习相关数据集的资源&#xff0c;例如 Mozilla 的 1400 小时开源语音数据集&#xff1b;ApolloScape 的大规模自动驾…

【Qt】Q_PROPERTY():属性系统

一、简介 Qt属性系统基于元对象Meta-Object系统,因此在使用时,需要继承QObject类并添加宏Q_OBJECT,属性除了具有类成员的功能外,还可以通过元对象系统访问,比如可以使用信号和槽机制。 二、使用方法 在继承QObject的类中,使用宏Q_PROPERTY()来注册属性。 Q_PROPERTY(…

从零开始学 Python 之运算符

从零开始学 Python 之运算符 前言 大家好&#xff0c;这里是「痴海」从零开始学习 Python 系列教程。此文首发于「痴海」公众号&#xff0c;欢迎大家去关注。学习一门语言最好的办法&#xff0c;就是教懂别人。在这公众号&#xff0c;我会从 Python 最基础的教程写起&#xff0…

今天照了大肚照

今天陪老婆去照了大肚照&#xff0c;本来累了一周了好不容易盼到周六想睡个懒觉&#xff0c;结果比平时起床还早&#xff01;要去照相&#xff01;然而一想到俺家小小&#xff0c;我就很激动&#xff0c;为了俺家小小&#xff0c;我一定加倍努力&#xff0c;做一个好爸爸。 …

【Qt】QT_BEGIN_NAMESPACE 和 QT_END_NAMESPACE

在看QtCreator源码时,总遇到QT_BEGIN_NAMESPACE 和 QT_END_NAMESPACE两个宏,源码中对这两个宏的定义伪代码如下 #if !defined(QT_NAMESPACE) # define QT_BEGIN_NAMESPACE # define QT_END_NAMESPACE #else # define QT_BEGIN_NAMESPACE namespace QT_NAMESPACE {# define Q…

Java排序算法:冒泡排序

Java排序算法&#xff1a;冒泡排序//创建数组并赋值int[] data new int[] {11,10,55,78,100,111,45,56,79,90,345,1000};for(int i0;i < arr.length-1;i){for(int j 0; j < arr.length-i-1;j){if(arr[j] > arr[j1]){int temp arr[j];arr[j] arr[j1];arr[j1] temp;…

前腾讯AI Lab负责人张潼加入创新工场,任港科大创新工场联合实验室主任

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑整理 | 琥珀出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;不过三个月&#xff0c;前腾讯 AI 主任张潼已对外公布了他离职后的新动态。3 月 20 日&#xff0c;创新工场宣布&#xff0c;张潼博士已加盟创新工场…

ESX上ORACLE 10.2RAC(4.在REHAT4.7中安装ORACLE RAC)

四、 安装CRS软件 上传cluster软件到rac1,rac2的/home/oracle目录下 [rootrac1 ~]# cd /home/oracle [rootrac1 oracle]# ls 10201_clusterware_linux32.zip Desktop ocfs2 oracleasm [rootrac1 oracle]# unzip 10201_clusterware_linux32.zip [rootrac2 oracle]# unzip 10201_…

【Qt中文手册】QObject

Qt几乎所有的类都是从QObject直接或间接继承的,但是你真的了解QObject吗?下面先看看QObject在官方手册中的介绍。 一、QObject简介 1、信号和槽 QObject是所有Qt类的基类,是Qt对象模型的核心。该模型的核心功能是信号和槽的通信机制(有吐槽Qt信号和槽的,个人建议不要用…

整理下.net分布式系统架构的思路

最近看到有部分招聘信息&#xff0c;要求应聘者说一下分布式系统架构的思路。今天早晨正好有些时间&#xff0c;我也把我们实际在.net方面网站架构的演化路线整理一下&#xff0c;只是我自己的一些想法&#xff0c;欢迎大家批评指正。 首先说明的是.net下开源内容较少&#xff…

柔性生态布局未来,小鱼易连 2019“深耕视界逐梦小鱼”北京火爆招募

3 月 21 日&#xff0c;小鱼易连 “深耕视界逐梦小鱼”——2019 春季伙伴招募大会北京站在北京东方美爵酒店成功召开。 小鱼易连联合创始人兼 CEO 袁文辉以“深耕视界逐梦小鱼” 为主题&#xff0c;为到场的四百家合作伙伴和媒体完整展示了小鱼易连全面布局产业互联网&#xf…

perl XML创建XML文件

首先安装XML::Writer,XML::Parser等模块 1.执行/usr/bin/perl -MCPAN -e install "YAML" 安装YAML模块 2.进入CPAN模式&#xff0c;进行下载模块操作 $ sudo perl -MCPAN -e shell 3.在CPAN模式下进行安装&#xff0c;nolock_cpan> install XML::Writer XML::Pars…

开发自己的山寨Android注解框架

目录 开发自己的山寨Android注解框架开发自己的山寨Android注解框架 参考 Github黄油刀 Overview 在上一章我们学习了Java的注解(Annotation)&#xff0c;但是我想大家可能感觉&#xff0c;虽然理解了也会学会&#xff0c;但是不知道干什么用&#xff0c;那么请继续忍受我这枯燥…

特斯拉起诉小鹏汽车员工窃取商业机密,何小鹏回应

参加 2019 Python开发者日&#xff0c;请扫码咨询 ↑↑↑整理 | 琥珀出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;3 月 21 日&#xff0c;外媒 TheVerge 报道称&#xff0c;特斯拉正针对多名前雇员和自动驾驶汽车公司 Zoox 提起诉讼&#xff0c;涉嫌盗用公司商业机…

【Qt】一个使用QEventLoop时,遇到的教训

1、问题描述 伪代码如下&#xff1a; QEventLoop eventLoop; QObject::connect(this, &Class::signal, [](){doSomething();eventLoop.exit(0); }); emit signal(); eventLoop.exec();在执行eventLoop.exec()时&#xff0c;造成永不退出。 2、原因分析 本打算在&#x…

基于kryo序列化方案的memcached-session-manager多memcached...

为什么80%的码农都做不了架构师&#xff1f;>>> 上次基于Java IO的序列化方案配置了memcached-session-manager&#xff0c;但是性能不好&#xff0c;现在先简单配置成基于kryo的 Xml代码 <Context path"/mobilemail" docBase"D:\webapp\WebR…