
java练习
文章平均质量分 77
ouyunwen
这个作者很懒,什么都没留下…
展开
-
使用DelayQueue模拟订单自动取消功能
使用DelayQueue模拟订单自动取消功能 背景: 今天要做一个作业:模拟一个使用DelayQueue的场景。于是我就做一个模拟订单自动取消的功能吧。需求以及实现思路如下: 需求: 1. 生成6个订单,从1号到6号订单,它们的创建时间依次递增3秒。 2. 规定如果一个订单在3秒内状态还是“CREATED”状态,那么就改成“CANCELED”状态。 实现思路: 1. 定义订单...原创 2018-09-04 14:57:09 · 7053 阅读 · 2 评论 -
模拟实现一个阻塞队列
模拟实现一个阻塞队列 背景: 最近在跟白老师学习,布置了一个作业,就是要自己写一个阻塞队列出来。 功能点: 开发出一个阻塞队列类,提供put()、take()方法。其中put()方法表示往队列里插入一个元素,如果队列容量不足,则等待,直到有空间为止。take()方法表示从队列里取出第一个元素,如果队列里没有元素,则等待,直到有元素为止。 知识点: synchronized、wait()...原创 2018-09-02 18:42:06 · 1021 阅读 · 0 评论 -
使用volatile对其他线程实时可见
使用volatile对其他线程实时可见 背景: 今天继续做白老师布置的作业,今天来设计一个小场景来演示用volatile修饰的变量对其他线程的可见性。 设计场景: 设计两个线程,第一个线程往已经定义好的list里面不断添加元素。 第二个线程不断读取这个list,当发现size等于10的时候,就输出日志并终止循环。 我们看这个list在有volatile修饰和没volatile修饰的区别...原创 2018-09-06 18:35:48 · 2290 阅读 · 2 评论 -
自己动手敲future模式例子
自己动手敲future模式例子 1.future设计模式简介: future设计模式的核心思想是异步调用。其理念应该跟ajax差不多,就是希望在等一个耗时比较长的操作的期间,做其他操作,然后其他操作做完了,回来再处理这个耗时长的操作的结果。这样业务完成的效率高一些。 2.future设计模式实现时序图: 通过看以下时序图,来了解future设计模式的具体实现思路。...原创 2018-09-13 11:32:17 · 608 阅读 · 0 评论 -
JAVA FORK-JOIN的使用例子
JAVA FORK-JOIN的使用例子 java的fork-join简介 先贴官方原文介绍: The fork/join framework is an implementation of the ExecutorService interface that helps you take advantage of multiple processors. It is designed for wo...原创 2018-09-25 23:44:28 · 9720 阅读 · 2 评论 -
自己动手写Master-Worker例子
自己动手写Master-Worker例子 Master-worker简介 Master-worker是一种可以把大任务分解,并行处理的一种设计模式。举个简单例子说明:有一个任务,可能要从几个地方取数据,然后再把这些数据汇总起来处理。如果按平时的串行方式,先取一个再取另一个,这样总的取数时间就是3个加起来的时间;如果我开几个线程,3个取数任务分别同时进行,从不同地方取数,那取数的时间就是3个中最久的...原创 2018-09-30 00:14:56 · 534 阅读 · 0 评论