首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
技术
订阅
ruki
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
基于JVMTI 实现性能监控
JVMTI 全程 JVM Tool Interface,它是Java虚拟机定义的一个开发和监控JVM使用的程序接口(programing interface),通过该接口可以探查JVM内部的一些运行状态,甚至控制JVM应用程序的执行。 需要注意的是,并非所有的JVM实现都支持J…
工具介绍 | ASAN和HWASAN原理解析
由于虚拟机的存在,Android应用开发者们通常不用考虑内存访问相关的错误。而一旦我们深入到Native世界中,原本面容和善的内存便开始凶恶起来。这时,由于程序员写法不规范、逻辑疏漏而导致的内存错误会统统跳到我们面前,对我们嘲讽一番。 这些错误既影响了程序的稳定性,也影响了程序…
Android Native | 内存问题的终极武器——MTE
汇编、C和C++本质上都是内存不安全的语言,因此开发者的无心之过可能会导致非法访问、内存踩踏等多种问题。这些内存问题一方面会影响用户的使用体验(进程崩溃、系统重启等);另一方面也会被黑客利用,增加入侵
分析字节跳动解决OOM的在线Memory Graph技术实现
什么是OOM,为什么会发生OOM以及其原因分析,大家去看原文就好了,本文主要分析APP内存使用到达阈值后,如何采集MemoryGraph信息并分析。什么是MemoryGraph?这个时候就进入了断点模
支付宝 App 构建优化解析:Android 包大小极致压缩
本章节我们将围绕《支付宝 App 构建优化解析》另启新系列,细分拆解客户端在“代码管理”、“证书管理”、“版本管理”、“构建打包”等维度的具体实现方案展开讨论,带领大家进一步了解支付宝在 App 构建模块下的持续优化。 本节将主要记录通过对支付宝 Android 包大小进行压缩…
APM-卡顿监控
主要是主线程阻塞。在开发过程中,遇到的造成主线程阻塞的原因可能是: 主线程在等锁:主线程需要获得锁A,但是当前某个子线程持有这个锁A,导致主线程不得不等待子线程完成任务。 ...... Matrix 卡顿监控在 RunLoop 的起始最开始和结束最末尾位置添加 Observer…
Flutter启动流程源码分析
我们知道Flutter的应用层代码由Dart编写,Framework层提供了一系列Widget和其它API,那么这些Dart编写的代码是如何在特定平台上执行的呢,这就要从Flutter的启动过程说起了,了解了Flutter的启动过程,这个问题便迎刃而解。 我们通过架构图可以看出…
浅谈Flutter热重载(上)
这是浅谈 Flutter 系列的第二篇,上一篇是 浅谈Flutter构建,在上一篇中,主要是理清 Flutter 在 debug 和 release 模式下生成的不同产物分别是什么,怎么调试 build_tools 源码等等,这些不会在后面重复讨论,所以有需要的同学可以先看下第…
Apache Kylin 入门 5 - 构建 Cube
Cube Info 界面主要填写 Cube 的一些基本信息,首先要选择一个数据模型,然后填写 Cube 名称,Cube 名称全局唯一不能重复;Cube 信息填写完成后点击 “Next” 进入下一步。 Dimensions 是维度选择界面,从数据模型的维度中选择一些列作为 Cub…
AutoRegister:一种更高效的组件自动注册方案(android组件化开发)
在编译时,扫描即将打包到apk中的所有类,将所有组件类收集起来,通过修改字节码的方式生成注册代码到组件管理类中,从而实现编译时自动注册的功能,不用再关心项目中有哪些组件类了。 特点:不需要注解,不会增加新的类;性能高,不需要反射,运行时直接调用组件的构造方法;能扫描到所有类,不…