02 2022 档案
摘要:概览: 简介:作用、地位、不控制并发的影响 用法:对象锁和类锁 多线程访问同步方法的7种情况 性质:可重入、不可中断 原理:加解锁原理、可重入原理、可见性原理 缺陷:效率低、不够灵活、无法预判是否成功获取到锁 如何选择Lock或Synchronized 如何提高性能、JVM如何决定哪个线程获取锁 总
阅读全文
摘要:Flutter 是 Google 推出的跨平台 UI 框架,可以快速地在 Android 和 IOS 上构建高质量的应用程序,其主要特点是 Flutter 具有快速开发的能力、富有表现力和灵活的 Ui 以及良好的原生性能,本篇文章主要介绍 Flutter 中的 Flex 布局,如下: Flex基础
阅读全文
摘要:Flappy Bird是13年红极一时的小游戏,其简单有趣的玩法和变态的难度形成了强烈反差,引发全球玩家竞相把玩,欲罢不能!遂选择复刻这个小游戏,在实现的过程中向大家演示Compose工具包的UI组合、数据驱动等重要思想。 Ⅰ.拆解游戏 不记得这个游戏或完全没玩过的朋友,可以点击下面的链接,体验一下
阅读全文
摘要:前言 在Android中,内存泄露的现象十分常见;而内存泄露导致的后果会使得应用Crash本文 全面介绍了内存泄露的本质、原因 & 解决方案,最终提供一些常见的内存泄露分析工具,希望你们会喜欢。 目录 1.png 1. 简介 即 ML (Memory Leak)指 程序在申请内存后,当该内存不需再使
阅读全文
摘要:当应用程序为对象分配内存,而对象不再被使用时却没有释放,就会发生内存泄漏。随着时间的推移,泄漏的内存会累积,导致应用程序性能变差,甚至崩溃。泄漏可能发生在任何程序和平台上,但由于活动生命周期的复杂性,这种情况在 Android 应用中尤其普遍。最新的 Android 模式,如 ViewModel 和
阅读全文
摘要:Jetpack Compose 引入了一种处理可观察状态的新方法 —— Snapsot(快照)。在 Compose 中我们通过 state 的变化来触发重组,那么请思考以下几个问题: 为什么 state 变化能触发重组呢? 它是如何确定重组范围呢? 只要 state 变化就一定会重组吗? 让我们带着
阅读全文