上一页 1 ··· 13 14 15 16 17
摘要: Java并发编程基础 线程简介 什么是线程 现代操作系统在运行一个程序时,会为其创建一个进程。例如,启动一个Java程序,操作系统就会创建一个Java进程。现代操作系统调度的最小单元是线程,也叫轻量级进程(LightWeight Process),在一个进程里可以创建多个线程,这些线程都拥有各自的计 阅读全文
posted @ 2018-03-09 11:39 luozhiyun 阅读(247) 评论(0) 推荐(0) 编辑
摘要: Java内存模型的基础 并发编程模型的两个关键问题 在并发编程中,需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。 在共享内存的并发模型里,线程之间共享程 阅读全文
posted @ 2018-03-08 18:16 luozhiyun 阅读(265) 评论(0) 推荐(0) 编辑
摘要: http://hedengcheng.com/?p=771 _Toc374698322 阅读全文
posted @ 2018-01-25 18:09 luozhiyun 阅读(286) 评论(0) 推荐(0) 编辑
摘要: Schema与数据类型优化 选择优化的数据类型 1.更小的通常更好 更小的数据类型通常更快,因为它们占用更少的磁盘,内存和CPU缓存 2.简单就好 简单数据类型的操作通常需要更少的CPU周期.例如:整型比字符操作代价更低,因为字符集和校对规则使字符比较比整型比较更复杂 3.尽量避免NULL 通常情况 阅读全文
posted @ 2017-12-10 23:01 luozhiyun 阅读(552) 评论(0) 推荐(0) 编辑
摘要: java8接口中的默认方法 概述默认方法 java8中可以在接口中定义一个default修饰的方法,例如: 这样任何一个实现了Sized接口的类都会自动继承isEmpty的实现 默认方法的使用模式 可选方法 很有可能有一种情况就是,类实现了接口,不过却刻意地将一些方法的实现留白.例如Iterator 阅读全文
posted @ 2017-12-07 16:26 luozhiyun 阅读(14254) 评论(0) 推荐(0) 编辑
摘要: 用流收集数据 汇总 查找最大值和最小值 连接字符串 广义的归约汇总 reducing需要说那个参数: 1.起始值 2.被操作的值 3.是一个BinaryOperator,将两个项目累计成一个同类型的值 同理,可以求最高热量的菜 分组 复杂的分组 1.查找每个子组中热量最高的Dish 2.对每组进行求 阅读全文
posted @ 2017-12-06 17:37 luozhiyun 阅读(830) 评论(0) 推荐(0) 编辑
摘要: 流的操作 流的使用一般包括三件事: 一个数据源来执行一个查询; 一个中间操作链,形成一条流的流水线; 一个终端操作,执行流水线,并能生成结果 中间操作 | 操作 | 类型 | 返回类型 | 操作参数 | 函数描述符 | | : : | : : | : : | : : | : : | | filter 阅读全文
posted @ 2017-12-05 17:52 luozhiyun 阅读(4599) 评论(0) 推荐(1) 编辑
摘要: 使用函数式接口 Predicate Consumer Function Lambdas及函数式接口的例子 阅读全文
posted @ 2017-11-30 21:44 luozhiyun 阅读(254) 评论(0) 推荐(0) 编辑
上一页 1 ··· 13 14 15 16 17