摘要: 如果并发的请求数量非常多,但每个线程执行的时间很短,这样就会频繁的创建和销毁线程,如此一来会大大降低系统的效率。这就是线程池的目的了。线程池为线程生命周期的开销和资源不足问题提供了解决方案。通过对多个任务重用线程,线程创建的开销被分摊到了多个任务上。 线程池主要流程 用户通过submit提交一个任务 阅读全文
posted @ 2020-01-06 20:42 柬埔没有寨 阅读(122) 评论(0) 推荐(0) 编辑
摘要: linux进程间通信方式 1. 管道 管道的实质是一个内核缓冲区,管道的作用正如其名,需要通信的两个进程在管道的两端,进程利用管道传递信息。管道对于管道两端的进程而言,就是一个文件,但是这个文件比较特殊,它不属于文件系统并且只存在于内存中。 管道克服了文件通信的问题: 1. 限制管道的大小。实际上, 阅读全文
posted @ 2020-01-06 20:03 柬埔没有寨 阅读(578) 评论(0) 推荐(0) 编辑
摘要: Dalvik虚拟机 DVM是Dalvik Virtual Machine的缩写,是Android4.4及以前使用的虚拟机,所有android程序都运行在android系统进程里,每个进程对应着一个Dalvik虚拟机实例。 DVM和JVM的区别 1. 执行的字节码不同 JAVA虚拟机运行的是JAVA字 阅读全文
posted @ 2020-01-06 10:58 柬埔没有寨 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 什么是JVM JVM是Java Virtual Machine(Java虚拟机)的缩写,是一个虚构出来的计算机,它屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码,ByteCode), 就可以在多种平台上不加修改地运行。这背后其实就是JVM把字节码 阅读全文
posted @ 2020-01-04 17:54 柬埔没有寨 阅读(605) 评论(0) 推荐(2) 编辑
摘要: gradle配置项 1. compileSdkVersion 用哪个 Android SDK 版本编译你的应用。因此我们强烈推荐总是使用最新的 SDK 进行编译。在现有代码上使用新的编译检查可以获得很多好处,避免新弃用的 API ,并且为使用新的 API 做好准备。 2. minSdkVersion 阅读全文
posted @ 2020-01-03 16:59 柬埔没有寨 阅读(614) 评论(0) 推荐(0) 编辑