在稍微复杂的项目中,经常会遇到需要对当前业务场景进行状态判断的需求,并且这里的状态可能是多种状态组合的方式,可能只一种状态,也可能是多种状态共存。这里就可以借助位运算来解决,用一个整型数值上不同二进制位上的0、1数值来表示不同的状态。这样做既可以避免使用多个状态flag时重复if else逻辑判断,
装饰器模式的经典应用就是在IO类库的设计上,如下面的用例所示,实现对文件的读取功能,可以选择使用FileInputStream类也可以使用BufferedInputStream嵌套FileInputStream的方式来完成,在具体API的使用上都可以使用read(bytes)的方式。 从Java I
日常Android ANR问题分析记录。 0x01 ANR六看一看 Trace关键词:Blocked,waiting to lock,locked看堆栈:死锁堆栈,业务调用堆栈,IPC堆栈,系统调用堆栈 二看logcat关键字关键字:Load,CPU,Slow Operation,Kswapd,Mm
日常Android ANR问题分析记录。 0x01 获取ANR日志我们都知道当应用发生ANR时,系统会将ANR时的日志信息保存到在/data/anr/traces.txt文件中。可以通过分析traces.txt文件对引发ANR问题的原因进行分析,但是在实际发生问题的时候
Flutter官方提供了Flutter DevTools和一些IDE Flutter plugin来辅助开发者进行性能评测,除了这些工具以外,还可以借助Dart和skia引擎提供的工具进行性能分析和调试。这里简单介绍下,Dart的Observatory和Skp Debugger的使用。 0x01 O
关于博客 博客定位:总结工作中遇到的问题和相应解决方案,记录下自身学习过程中的一点思考,希望当自己回首往事的时候不会因碌碌无为而悔恨。 关于笔名:病已,释义病已愈。希望每天都像大病初愈般焕然一新,珍惜当下。 联系方式 邮箱: yangfa&#