Java 多线程
Java 多线程
线程池
Executors
newCachedThreadPool: 创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回
收空闲线程,若无可回收,则新建线程。线程池的规模不存在限制。(数量不固定的线程池)
newFixedThreadPool: 创建一个固定长度线程池,可控制线程最大并发数,超出的线程会
在队列中等待。(固定数量的线程池)
newScheduledThreadPool: 创建一个固定长度线程池,支持定时及周期性任务执行。(定时线程池)
newSingleThreadExecutor: 创建一个单线程化的线程池,它只会用唯一的工作线程来执行
任务,保证所有任务按照指定顺序(FIFO, LIFO, 优先级)执行。(单线...
SQL datax
SQL datax
datax 使用python 和 java 同步数据
启动failed; error=’Cannot allocate memory’
可分配的内存比JVM运行的内存少, 需要减少JVM运行内存
python datax.py –jvm=”-Xms5G -Xmx5G” ../job/test.json
JDBC Driver 版本低的问题
datax mysql插件使用 mysql-connector-java-5.1.34
写入需要跟mysql版本相同
解决:
解决DataX支持Mysql 8的读写
Reference
DataX
DATAX动态参数数据传递
Build Maven
Build Maven
卡在 Generating project in Batch mode
mvn 命令加 -X 可以看到详细过程, 可以看到卡在下载archetype-catalog.xml
解决方法很简单。
把上述地址复制到浏览器中,下载这个文件到本地。
把文件archetype-catalog.xml复制到目录.m2\repository\org\apache\maven\archetype\archetype-catalog\2.2下面。
在上述命令后增加参数-DarchetypeCatalog=local,变成读取本地文件即可。
指定编译Java版本
<maven.compiler.source>1.8</maven.compi...
Flutter 导航
Flutter 导航
MaterialApp.initialRoute 初始路线
MaterialApp.routes 命名路线
Navigator 页面间导航
Route 就是页面
MaterialPageRoute
Navigator 方法
Navigator.of(context).push /// 使用构造函数传参
Navigator.of(context).pushAndRemoveUntil
Navigator.of(context).pop
Navigator.of(context).pushNamed
arguments 可以传参数
/// 提取arguments
1. ModalRoute.of(context).se...
Java lint
Java lint
javac
javac -Xlint:unchecked
Ant
<javac …>
</javac>
Maven
in maven-compiler-plugin
-Xlint:unchecked
Gradle
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs « “-Xlint:unchecked”
}
}
tasks.withType(JavaCompile) {
options.compilerArgs « “-Xlint:unchecked” « “-Xlint:depre...
Flutter 状态
Flutter 状态
Flutter 生命周期
1. 本地平台生命周期
// 注册监听
WidgetsBinding.instance.addObserver(WidgetsBindingObserver);
//监听本地应用生命周期
WidgetsBindingObserver.didChangeAppLifecycleState(AppLifecycleState state)
WidgetsBindingObserver中还包含其他与本地平台状态有关的回调
2. Widget State 生命周期
initState()
didChangeDependencies()
build()
render tree
didUpdateWidget()
build()...
Tools Vscode中Flutter自动补全卡顿
Tools Vscode中Flutter自动补全卡顿
如果安装Vim和Flutter插件, 那么自动补全时会出现卡顿
Vim每次键入会分析并且需要插件返回结果
Dart自动补全目前是同步的, 并且需要分析代码
2和3项合起来导致卡顿
解决:
不使用Vim插件 “vim.disableExtension”: true
“dart.previewLsp”: true 使用dart lsp服务 这是异步实现
Reference
Editor lags badly when Vim extension is enabled #1800
453 post articles, 57 pages.