Wesley13 Wesley13
3年前
java四种线程池类型以及可选择的阻塞队列
之前笔记有记录java线程池的拒绝策略,回顾一下线程池的处理任务的优先级:先考虑corePoolSize、任务队列(缓冲队列)workQueue、最大线程maximumPoolSize,如果三者都满了,使用handler处理被拒绝的任务。即:如果运行的线程少于corePoolSize,则Executor始终首选添加新的线程,而不进行排队
Wesley13 Wesley13
3年前
SCHED_FIFO与SCHED_OTHER调度机制
疑问两个线程分别有不同的调度策略,一个SCHED\_FIFO,一个SCHED\_OTHER,按照之前的理解,SCHED\_FIFO实时线程一定会占用CPU一直运行,导致SCHED\_OTHER的普通线程得不到CPU,事实是这样么?验证写了一小段代码,一个是验证SCHED\_FIFO的高优先级线程会不会抢占低优先级的线程,在不主动放弃的
Wesley13 Wesley13
3年前
HADOOP性能优化和运维
集群中任意一个节点都可以被用来提交认任务,虽然通常我们使用master节点提交任务。HADOOP客户端不参与计算和存储,专门用来上传下载文件和提交任务。性能优化4大块:!(https://static.oschina.net/uploads/space/2017/0406/111251_QSBe_192561.png)具体优化如下:1.选
Stella981 Stella981
3年前
Android中AsyncTask的使用
原文https://blog.csdn.net/liuhe688/article/details/6532519在Android中实现异步任务机制有两种方式,Handler和AsyncTask。Handler模式需要为每一个任务创建一个新的线程,任务完成后通过Handler实例向UI线程发送消息,完成界面的更新,这种方式对于整个过程的控制比较精细
Wesley13 Wesley13
3年前
Java并发系列5
今天讲一个倒计时器工具,叫CountDownLatch。需要这个工具的场景大概有:当所有的小任务都完成之后,再启动大任务。先看代码:publicclassCountDownLatchDemo{staticfinalCountDownLatchLATCHnewCountDownLatch(10);
Stella981 Stella981
3年前
Executor框架
任务是一组逻辑工作单元,而线程则是使任务异步执行的机制。线程池简化了线程的管理工作,并且java.util.concurrent提供了一种灵活的线程池实现作为Executor框架的一部分。在Java类库中,任务执行的主要抽象不是Thread,而是Executor,如下所示:publicinterfaceExecutor{void
Stella981 Stella981
3年前
NodeJs中nextTick、setTimeout、setImmediate运行顺序解析
setImmediate该方法用来把一些需要长时间运行的操作放在一个回调函数里,在浏览器完成后面的其他语句后,就立刻执行这个回调函数。setImmediate是宏任务,优先级是比定时任务低的。除非在定时任务中。测试代码:setImmediate(function(){console.log("setImmediate");
Wesley13 Wesley13
3年前
分布式系统定时任务,保证只有一个服务执行了改任务
文章摘自:https://www.cnblogs.com/0201zcr/p/5942748.htmlpackagecom.abtc.server.mine.common.utils;importorg.slf4j.Logger;importorg.slf4j.LoggerFactory;import
Stella981 Stella981
3年前
Jenkins实现自动打包,MAVEN打包,Shell脚本启动
1.点击New任务!(https://img2018.cnblogs.com/blog/1447180/201908/144718020190801090058687350582776.png)2.创建任务,输入项目名!(https://oscimg.oschina.net/oscnet/c2b54e783a61c54
并发编程-FutureTask解析 | 京东物流技术团队
通过本文可以了解FutureTask任务执行的方式以及Future.get已阻塞的方式获取线程执行的结果原理,并且从代码中可以了解FutureTask的任务执行状态以及状态的变化过程。