简介
垃圾回收(Garbage Collection)是Java虚拟机垃圾回收器提供的一种用于在空闲时间不定时回收无任何对象引用的对象所占据内存空间的一种机制。
注意:垃圾回收器回收的是无用对象占据的内存空间。
本文主要介绍字节码文件结构和加载、Java虚拟机结构等。
生产者消费者模型是一种重要的模型,基于等待/通知机制。生产者/消费者模型描述的是有一块缓冲区作为仓库,生产者可将产品放入仓库,消费者可以从仓库中取出产品,生产者/消费者模型关注的是以下几个点:
生产者/模型作为一种重要的模型,它的优点在于:
本文介绍Java里并发相关的内容,包括多线程、线程池、锁等。
当多个线程同时访问对象并要求操作相同资源时,分割了原子操作就有可能出现数据的不一致或数据不完整的情况,为避免这种情况的发生,需要采取同步机制,以确保在某一时刻,方法内只允许有一个线程。
之前构建Android项目时,经常出现以下WARNING:
1 | WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'. |
但我检查了APP项目以及所有的Module,都没有发现compile
关键字,用全局搜索(command + shift + f)也没有查到,所以应该是某个远程依赖或插件中使用了compile
关键字,但如何定位是哪一个呢?
通过IDESync
后的提示如下:
Gradle是Android构建系统的重点,需要花费时间用心学习。学习资料主要是官方的Gradle Docs,有个社区版的中文翻译资料,英语不好的同学可以看看,但不全。
这章首先对Gradle做一个简单的介绍,然后讲如何使用官方文档和API,接着讲解Gradle的基本概念、Wrapper和学习中需要使用到的命令行指令、插件等。有些知识点如插件应该放在之后的章节讲解,但为了保持文章的完整性,我放在了这一章,学习的过程中可能不能完全理解,没有关系,在以后的章节中如果有涉及的话,会具体解释。