摘要:
Lock接口 lock() 没完没了的试 挂起 trylock() 一次不成就算了 trylock(time,timeunit) 超时后就算了 lockinterruptibly() 被动等通知 可中断 newCondition 等待池。如果唤醒和挂起倒置 会死锁 reentrantL lock() 阅读全文
摘要:
自旋锁:循环等待,不断尝试获取,成功后退出。 乐观锁: 修改数据时发现数据变化则重读数据并修改 假定不冲突 悲观锁:从读数据开始就加锁 -- 假定冲突 独占锁:一把用写,其他线程不能加锁。 共享锁:读,可以加读锁,但不能加写锁。 (不)可重入锁:已经获取锁的线程未释放前重新获取锁,是否阻塞。reen 阅读全文
摘要:
1、i++javap后的指令码,分别为操作数栈内 堆内存取i, 存入常量1,执行加法,写回堆内存多步操作。非原子性,会有线程问题。 处理办法,加锁(synchronize,ReentrantLock)或者atomicInteger。 或者使用cas(compare and swap)操作(-硬件同步 阅读全文
摘要:
1、准备文件 flink安装包(1.9) netcat(windows版) 2、创建maven工程。 可以使用idea之类的工具,pom文件至少必须引用 3、代码中完成一个功能(抄了一个满世界都是的wordcount工程)并打成jar包。 4、使用netcat 启动一个端口,作为wordcount的 阅读全文
摘要:
前因:业务要求希望对部分页面展示的内容整合成可下载的pdf文件。由于没有前端支持样式HTML转PDF类的方案全部pass,所以选择使用有样式的word+freemarker模板引擎生成word文件,然后通过office工具转换pdf。 这个策略在windows下完全正常,linux下只能显示乱码。然 阅读全文