1、MySQL的基础架构 1.MySQL是一种关系数据库产品,是建立在关系模型基础上的数据库。架构一般可分为应用层、逻辑层、物理层。应用层:负责和客户端、用户进行交互。逻辑层:负责具体的查询处理、事物管理、存储管理、恢复管理等。物理层:实际物理磁盘上的数据库文件(比如:数据文件、日志文件等)。2、查询执行过程概述 &n
通常来说,一个线程需要经历三个生命阶段:开始,执行,结束。线程会在任务执行完毕之后结束,那么为了确保线程的存活,我们会在执行阶段给线程赋予不同的任务,然后在里面添加退出的条件从而确保任务能够执行完毕后退出。在很多时候,线程不仅仅是线性执行一系列的任务就结束那么简单的,我们会需要增加一个任务队列,让线程不断的从任务队列中获取任务去进行执行,另外我们还可能在线程执行的任务过程中与其他的线程进行协作。如
在程序开发的实践当中,为了让程序表现得更加流畅,我们肯定会需要使用到多线程来提升程序的并发执行性能。但是编写多线程并发的代码一直以来都是一个相对棘手的问题,所以想要获得更佳的程序性能,我们非常有必要掌握多线程并发编程的基础技能。众所周知,Android程序的大多数代码操作都必须执行在主线程,例如系统事件(例如设备屏幕发生旋转),输入事件(例如用户点击滑动等),程序回调服务,UI绘制以及闹钟事件等等
一、介绍 TraceView是一款性能分析工具,可以进行数据采集和分析,可以以图形化的方式让我们了解要跟踪的程序并且能得到相关method。本文只讲解在app启动时候TraceView的功能,当然,对于app运行过程中出现的卡顿,延迟现象,也可以进行分析。 TraceView主要是分析方法的运行时间以及被调用的次数,在app启动过程中,如果方法花费的时间过长,超过
我们可以使用Gradle来分析代码,分析引用的资源,对于那些没有被引用到的资源,会在编译阶段被排除在APK安装包之外。待续。。。
Android为我们提供了Proguard的工具来帮助应用程序对代码进行瘦身,优化,混淆的处理。它会帮助移除那些没有使用到的代码,还可以对类名,方法名进行混淆处理以避免程序被反编译。待续。。。
后面有时间研究。。。
AS developers,there's nothing we like more than an amazing activity that delights and entertatins our users.But sadly,initializing all the subsystems,resources,and layouts provide that experien
You know what this timer means? Every quarter second a user spends staring at a blank screen instead of interfacing with your app is a quarter second more. they're willing to close your a
这块真机使用比较复杂,待后面专项测试轮廓测试出来后再来补充。可以参考:http://www.jianshu.com/p/e9e05ce5b0c9 http://blog.csdn.net/autumn_xl/article/details/40741835 http://blog.csdn.net/wangjia55/article/details/38120217
这个工具目前还不是很了解,后面完善。
1.介绍 Android手机内置工具Profile GPU Rendering(中文名称:GPU显示配置文件、GPU呈现模式分析等),用来分析是什么让你的应用出现卡顿、变慢。 2.使用方式 开发者选项--GPU 显示配置文件--以条的形式显示于屏幕,然后你就会看到1条条不同颜色的柱状图,滑动下屏幕,你会发现,柱状图开始向右延伸,切换界面,柱
1.理解过渡绘制 过渡绘制是指一帧内某个像素被重复绘制了多次。比如层叠的卡片,我们需要一层层绘制,而对看不见的底层进行绘制,就是所说的过渡绘制,浪费了GPU性能。 2.观察过渡绘制 幸运的是,我们可以通过手机设置里面的开发者选项,打开Show GPU Overdraw(调试GPU过渡渲染),选择 显
渲染性能到底怎么表现? 应用设计师们为了让应用呈现很棒的使用体验,对界面进行渲染,但是这些华丽的图片及转场,会使应用出现卡屏、运行不流畅的用户体验(比如切换界面、滑动滚动条等)。2.了解下渲染性能的原理 系统会在每16ms内对你的活动进行重新绘制,这意味着你必须在16ms内完成屏幕的更新(包括计算、绘图等操作),也就是16ms一帧。但是如果你超过
相比之前的Memory Monitor和Heap Viewer,Allocation Tracker(需要手机root)更能清晰的定位内存分配,比如再有内存抖动的地方,我们可以通过查看其内存分配轨迹来看短时间内有多少相同或相似的对象被创建,进一步找出发生问题的代码。
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号