摘要:
RabbitMQ is the most widely deployed open source message broker.
With more than 35,000 production deployments of RabbitMQ world-wide at small startups and larg... 阅读原文
2018-11-04 06:00:04 阅读(764) 评论(0)
摘要:
阅读原文
2018-11-04 00:00:05 阅读(982) 评论(0)
摘要:
阅读原文
2018-11-03 22:58:03 阅读(704) 评论(0)
摘要:
java 8日期相关类
Instant:时间戳
Duration:持续时间,时间差
LocalDate:只包含日期,比如:2016-10-20
LocalTime:只包含时间,比如:23:12:10
LocalDateTime:包含日期和时间,比如:2016-10-20 23:14:21
Period:时间段
Zon... 阅读原文
2018-11-03 22:24:02 阅读(1100) 评论(0)
摘要:
Spring 是一个非常流行的基于Java语言的开发框架,此框架用来构建web和企业应用程序。与许多其他仅关注一个领域的框架不同,Spring框架提供了广泛的功能,通过其组合项目满足现代业务需求。
Spring框架提供了以多种方式配置bean的灵活性,例如XML,注解和JavaConfig。随着功能数量的增加,复杂性... 阅读原文
2018-11-03 20:35:07 阅读(1749) 评论(0)
摘要:
2018-11-02 20:54:09 开始写
IFactory.java类(顶层)
1 package AbstractFactory;
2
3 public interface IFactory {
4 public IUser createUser();
5 public IDe... 阅读原文
2018-11-03 19:29:04 阅读(723) 评论(0)
摘要:
2018-11-02 20:27:28开始写
Operation.java类
1 package StaticFactoryMethedPattern;
2
3 public abstract class Operation {
4 public abstract float getResult... 阅读原文
2018-11-03 18:56:03 阅读(1832) 评论(0)
摘要:
在执行程序时为了提高性能,提高并行度,编译器和处理器常常会对指令做重排序。重排序分三种类型:
编译器优化的重排序。编译器在不改变单线程程序语义的前提下,可以重新安排语句的执行顺序。
指令级并行的重排序。现代处理器采用了指令级并行技术(Instruction-Level Parallelism, ILP)来将多条指令... 阅读原文
2018-11-03 17:23:04 阅读(1856) 评论(0)
摘要:
Semaphore类有两个重要方法
1、semaphore.acquire();
请求一个信号量,这时候信号量个数-1,当减少到0的时候,下一次acquire不会再执行,只有当执行一个release()的时候,信号量不为0的时候才可以继续执行acquire
2、semaphore.release();
释放一个信号... 阅读原文
2018-11-03 16:47:02 阅读(2200) 评论(0)
摘要:
上文创建多线程买票的例子中注释会出现错票、重票的问题,本文来讲讲如何解决此问题。本文例子:利用多线程模拟 3 个窗口卖票
实现Runnable接口
public class TestThread2 {
public static void main(String [] args... 阅读原文
2018-11-03 14:49:02 阅读(1896) 评论(0)