菜园前端 菜园前端
2年前
考考你CSS的选择器权重
原文链接:选择器权重选择器权重划分代表有多个选择器同时选中同一个元素时,应该以谁的为准,这里就会涉及到权重的问题。现实生活举例假设你的好朋友小明和路人小红同时掉水里,你先救谁?那你可能会先救小明,因为小明的优先级/权重比较高。基础案例在同一层级下同一层级代
如果一个Activity启动比较慢,需要优化,你觉得可以从哪些方面入手?
打开一个app的时候速度比较慢,等一会才能看到UI,有很多种原因,下面是我根据这些个情况做出的多种优化,记录一下。1、采用动态布局:先是优化了布局,减少层级嵌套,使用merge优化等等。但发现加载xml布局还是慢了点,于是改为动态布局,布局的时间减少了好几倍。2、利用MessageQueue.IdleHandler()回调按照activity的生命周期
Stella981 Stella981
4年前
Android OpenCV(二十二):边缘检测
边缘检测什么是图像的边缘?图像的边缘是图像最基本的特征之一。所谓边缘(或边沿)是指周围像素灰度有跳跃性变化或“屋顶”变化的那些像素的集合。边缘是图像局部强度变化最明显的地方,它主要存在于目标与目标、目标与背景、区域与区域之间,因此它是图像分割依赖的重要特征。从本质上说,图像边缘是图像局部特性不连续性(灰度突变、颜色突变、纹理结构
Wesley13 Wesley13
4年前
Unity3D热更新之LuaFramework篇[10]
背景19年年初的时候,进到一家新单位,公司正准备将现有的游戏做成支持热更的版本。于是寻找热更方案的任务就落在了我头上。经过搜索了解,能做Unity热更的方案是有好几种,但是要么不够成熟,要么不支持iOS平台,相对来说,还是用Lua来实现比较靠谱。而Lua的热更方案也有好几种:xLua、toLua和sLua。其
Stella981 Stella981
4年前
Pytorch 多GPU训练
概述Pytorch多GPU训练本质上是数据并行,每个GPU上拥有整个模型的参数,将一个batch的数据均分成N份,每个GPU处理一份数据,然后将每个GPU上的梯度进行整合得到整个batch的梯度,用整合后的梯度更新所有GPU上的参数,完成一次迭代。其中多gpu训练的方案有两种,一种是利用nn.DataParallel实现,这种方法是最早引入
Easter79 Easter79
4年前
Team Work Ⅱ
RegalLighting团队设计分工思考本次大作业我的分工定位是:Unit及子类,主要设计实现建筑类的功能。首先王者光耀这款游戏所需要的建筑分为三类:1、防御塔:有一定的血量,血量为0时破坏,可以造成伤害2、水晶:游戏胜负判断的依据,拥有一定血量,血量为0时破坏,被破坏时游戏结束,不可造成伤害3、泉水:基础设施,玩家在泉水中央可以
Stella981 Stella981
4年前
Linux下crontab命令的用法
crond是linux用来定期执行程序的命令。当安装完成操作系统之后,默认便会启动此任务调度命令。crond命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。而linux任务调度的工作主要分为以下两类:1、系统执行的工作:系统周期性所要执行的工作,如备份系统数据、清理缓存2、个人执行的工作:某个用户定期要做的工作,例
Stella981 Stella981
4年前
Codeigniter 3 拓展HMVC
在Codeiniter(以下统称CI)2.X版本中,我们就通过拓展核心类库实现了HMVC,但是同样的代码,拿到CI3中,就很有可能不好用了。拓展核心类库方式官方的文档对拓展核心类有详细的说明:你定义的类必须继承自父类。你的类名和文件名必须以MY\_开头。(这是可配置的,见下文)举个例子,要扩展原始的Input类,你需要新
Stella981 Stella981
4年前
JavaScript函数式编程,“香”吗?
总说函数是JavaScript的一等公民,很多人就问了,它凭什么?其实凭的就是对于JS这种没有明确归类的“多范式语言”,函数式编程拥有着天然的优势。在JS里,函数本身就被视作对象,可以有属性,能作为参数传给函数,也能作为函数的返回结果,十分便利。而这种特性对于代码日益庞大,业务逻辑逐渐复杂的前端来说称得上是至关重要。
Stella981 Stella981
4年前
JVM垃圾回收机制
引用计数法:当给对象添加一个引用计数器,每当有一个地方引用这个对象时计数器值就1;引用失效时,计数器值就1;任何时刻计数器为0的对象就是不可能在被使用。优点:引用计数收集器可以很快地执行,交织在程序运行中。缺点:无法检测出循环引用。例如:MyObjectobject1newMyObject();MyObjectobject2