摘要: Pointer Variable Declarations and Initialization Pointer variables contain memory address as their values. Diagrams typically represent a pointer as a 阅读全文
posted @ 2016-09-20 22:58 勇敢的少年啊 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 创建和启动一个Java线程 创建和启动线程 新建一个线程 启动一个 Java 线程,只需要调用它的 方法 这个例子里没有写其他的代码,当线程启动之后马上就停止了。 有两个办法指定线程去执行代码。一种是创建一个 Thread 的子类,覆盖 方法。第二种是传入一个实现 接口的对象给 Thread 的构造 阅读全文
posted @ 2016-09-20 22:03 勇敢的少年啊 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 并发模型和分布式系统的相似之处 在并发系统中,不同的线程之间会进行交流,就像分布式系统中的不同进程会进行交流一样。 在分布式系统中会遇到一些挑战:网络可能会异常,远程的电脑或进程挂掉了等等。并发系统中也会遇到类似的情况:CPU挂了,网卡异常,硬盘挂了等等。 Parallel Workers 并行工作 阅读全文
posted @ 2016-09-20 21:13 勇敢的少年啊 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 多线程也不是万金油,也是有代价的: 程序设计更复杂 上下文切换的开销 耗费更多的资源 More complex design 多线程访问共享资源的时候要注意;多线程之间交换没那么简单;出了问题很难发现、重现和修复。 Context Switching Overhead 当CPU从一个线程切换到另外一 阅读全文
posted @ 2016-09-14 23:43 勇敢的少年啊 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 多线程有三个好处: 更好的资源分配 有些情况下,程序设计更简单 程序的性能提高 Better resource utilization 假设有一个应用用来读取磁盘里的文件并处理。读取文件需要5秒,处理文件需要2秒。如果需要读取、处理两个文件,在单线程的清下,时间消耗为 5秒用来读取文件 A 2秒用来 阅读全文
posted @ 2016-09-14 22:11 勇敢的少年啊 阅读(401) 评论(0) 推荐(0) 编辑
摘要: 自定义View中的onMeasure()方法 在自定义 View 的时候,需要实现 onMeasure() 方法,去告诉系统这个自定义 View 的大小。 onMeasure() 方法如下: 测量模式 通过 MeasureSpec 类解析 和 帮助测量 View。 MeasureSpec 是一个32 阅读全文
posted @ 2016-09-12 23:03 勇敢的少年啊 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 没有Builder模式的时候,是怎么样写代码的? 举个组装电脑的例子来说明。有一台电脑类,如下 如果要组装这样一台电脑,可以使用构造方法传入参数列表,构建一个对象 但是参数列表的长度也太长了,看得都烦躁。而且,在使用构造 Computer 对象的时候,有可能暂时不需要传入某些参数,比如目前只需要一个 阅读全文
posted @ 2016-09-08 22:21 勇敢的少年啊 阅读(456) 评论(0) 推荐(0) 编辑