logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Thread-打断一下,插个广告 ^ - ^

本文基于jdk1.8一.那个Thread中断一下如何停止一个运行线程呢?很久以前通过stop(),这是属于抢占式的中断。强制停止一个线程,可能造成不可预估的后果。举个例子:例如正在玩游戏,耗时n久通过了,没存档,然后突然断电了。。。,这个后果是砸显示器还是砸显示器呢。现在推荐调用interrupt(),这属于协作式中断。线程中断不代表线程的立即死亡,可能是中断返回等待新的任务,或是线程忙完任务选择

#java
SpringBoot word文档转pdf

一.背景项目中有个需求大体意思是,上传一个word模板,根据word模板合成word文件,再将word文件转为pdf。二.方案选择Spire.Doc for Java方案Spire.Doc for Java这个是商用收费的,不过API文档丰富且集成简单,免费版仅支持3页转换。类似的还有ITEXT,这个商用也是受限制的。docx4j方案开源可商用,仅支持docx格式的word。jodconverte

#java
Redis百万数据排行榜

面试遇到一个问题:现在有百万的数据,要对用户答题做一个排行榜,展示前20的排名信息,用户可以重复进行答题,更新分数排名。一. 导数据入缓存要实时展示一个用户排行榜,如果每次都重数据库查询数据,效率肯定不行。这是考虑到使用Redis缓存。Redis的缓存类型主要有String,Hash,List,Set,ZSet这5种。对于要有序不重复的排行场景,采用ZSet,其中以分数作为score。从数据库导入

#redis#面试
Redisson延迟队列剖析

上篇文章讲到了,使用redisson实现延迟队列,本文主要对其设计原理进行分析。redisson实现延迟队列,有三个队列组成,其中一个zset类型的延迟队列,另外两个都是list类型的堵塞队列。整体结构图如下:一.实例化延迟队列实例RedissonDelayedQueue操作,主要设置了一些队列名称,以及创建一个任务protected RedissonDelayedQueue(QueueTrans

#java#redis
暂无文章信息