8.4k 8 分钟

# 基础 # 并发编程模型的分类 并发编程中,关注的两大问题: 线程之间如何通信。 线程之间如何同步。 # 如何通信 命令式编程中,线程通信:共享内存与消息传递: 共享内存并发模型: 线程之间共享程序的公共状态。 线程之间通过写 - 读内存中的公共状态来隐式进行通信。 消息传递并发模型: 线程之间没有公共状态。 线程之间必须通过明确的发送消息来显式进行通信。 #...
5.3k 5 分钟

# 字段 # table: Entry<K, V>[] 哈希表,数组实现,用于存放元素;每一格是一个哈希桶(链表实现)。 HashMap$Entry<K, V> { key: K; value: V; next: Entry<K, V>; hash: int;}# threshold: int 扩容的阈值,如果达到此阈值,则进行扩容;下一扩容容量 * loadFactor。 # loadFactor: float 用于计算扩容阈值(threshold)。 # size:...
368 1 分钟

# curl 批量下载图片 / 文件 创建需要批量下载的清单文件,如:img.txt。清单可以是完整 url 或路径 编写如下脚本: #!/bin/zshfor line in `cat img.txt` # 按行遍历清单文件内容do # echo 'https://tva4.sinaimg.cn/large/'$line # 执行下载操作,通过拼接,以及添加相关下载参数 curl --location --request GET 'https://tva4.sinaimg.cn/large/'$line \ --header...
1.7k 2 分钟

# 开始 进入项目后,执行以下命令,自动下载项目对应的 gradle 版本 distribution;不需要安装 gradle,直接使用项目提供的 gradlew。 $ ./gradlew wrapper如果下载 distribution 很慢,可以修改 distributionUrl 地址,改为国内的镜像地址。 # 文件路径:项目根目录 /gradle/wrapper/gradle-wrapper.propertiesdistributionUrl=<替换为国内镜像地址># 设置全局镜像 在 $GRADLE_USER_HOME/init.d/ 目录下,默认是...
5.4k 5 分钟

# 基本概念 text normalization: Regular expressions can be used to specify strings we might want to extract from a document, to defining strings like $199 or $24.99 for extracting tables of prices from a document. 用正则表达式,从文档中提取出来的集合,文本规范化。 tokenization: English words are often separated from each...
3.5k 3 分钟

# Sass # 文件后缀区别 sass: 缩进语法; scss: 使用花括号和分号,和 css 相近。 # 使用变量($) $ 符号定义,旧版本使用 “!” $basic-border: 1px solid #ccc; 有作用范围,如果在花括号中定义,則范围只能在花括号内部。 $width: 100px;.nav { $width: 20px; width: $width;} 中划线和下划线相互兼容。 $hightlight-color: red;.nav { color:...
2.5k 2 分钟

# 数值 # 长度和尺寸 # <length> 绝对单位:px, mm, cm, in, pt 1 in = 96 px 1 in = 2.54 cm 相对单位:em, rem # 无单位值 margin padding 等默认值:0 无单位的行高:1.5,当然也可以有具体单位 # 动画 # <angle> # rotate:rotate(0deg) # <time> # <timing-function> # <string> # 百分比 #...
7.9k 7 分钟

# Flux 原理 0..N 个元素经过一系列操作,最终得到处理的结果。每个元素的输入、处理和输出都是线性的。 # 构造 Flux,输入元素阶段 # 元素可枚举方式 介绍 Flux 构造方法前,先描述 Supplier 和 Publisher 的结构,defer 会用到。 package java.util.function;@FunctionalInterfacepublic interface Supplier<T> { /** * 获取一个结果. * * @return 结果 */ T get();}package...
6.6k 6 分钟

# 交换排序 # 冒泡排序 思路:从底部开始,两两比较,最小的上浮冒泡。 代码: public class BubbleSort { int[] array; public BubbleSort(int[] array) { this.array = array; } public void sort() { int i, j; for (i = 0; i < array.length - 1; i++) { // 1. 从尾部(底部)开始 for (j = array.length -...
2.7k 2 分钟

# JDK 的命令行工具 -Dcom.sun.management.jmxremote 开启 JMX 管理功能;JDK 1.6 以上默认开启。 jps:JVM Process Status Tool,显示指定系统内所有的 HotSpot 虚拟机进程。 jstat:JVM Statistics Monitoring Tool,用于收集 HotSpot 虚拟机各方面的运行数据。 jinfo:Configuration Info for Java,显示虚拟机配置信息。 jmap:Memory Map for Java,生成虚拟机的内存转储快照(heapdump 文件)。 jhat:JVM Heap...