栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP > php开源框架 > msqphp

智能加载 - msqphp轻量级php7.1框架beta -1.9版本使用手册

msqphp 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

智能加载 - msqphp轻量级php7.1框架beta -1.9版本使用手册


##智能加载

![](https://box.kancloud.cn/052802e6fbf07fe61d849f0364aff2d8_1172x627.png)

实现原理:
修改代码 composer/ClassLoader.php函数为
function includeFile($file)
{
msqphpcoreailoadAiLoad::addClasses($file);
include $file;
}
或者使用框架本身加载类
处理过程: 未知->收集->整理->完成
+. 判断是否有缓存信息,有则判断对应状态,跳至对应步骤
+. 未知:没有对应信息,在结束时获得一次加载文件列表,进入收集模式
+. 收集:判断收集记录个数->不足继续收集
->整理所有记录,当出现概率超过70%时,将该文件放入待整理文件列表中.
+. 整理:整理文件列表,直至依赖关系解决,排序完成
+. 完成:直接载入
[
'type' => 'unknown|collect|miexd|last',
'collect' => [] // 收集记录,
'needful' => [] // 需要文件
'tidied' => [] // 整理后文件
'last' => [] // 最终列表
]
例:
需要加载123456789九个文件, 1需要23,2需要468,3需要57,45678无依赖
运行次数|结果
1| 收集12345678
2| 收集123456789
.....
10| 收集结果12345678十次,9五次,需要加载文件列表为12345678
11| 加载文件1,加载前未加载.放入tided,但依赖导致加载2345678, 当加载2-8时,时光荏加载前|已经加载,放至needful中
12| 将2-8反序加载,依次加载文件8765432,加载前均未加载,放入tidied中,此时,needful为空获得最终加载文件列表
13| 直接加载87654321.


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/213927.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号