10 2018 档案
摘要:Future与FutureTask都是用于获取线程执行的返回结果。下面我们就对两者之间的关系与使用进行一个大致的介绍与分析 一、Future与FutureTask介绍: Future位于java.util.concurrent包下,它是一个接口 Future接口中声明了5个方法,下面介绍一下每个方法
阅读全文
摘要:sofa-rpc是阿里开源的一款高性能的rpc框架,这篇文章主要是对sofa-rpc provider启动服务流程的一个代码走读,下面是我简单绘制的一个基本的关系流程图 下面我们根据sofa-rpc代码,对流程进行一个跟踪与走读。我们以BoltServer的为例 可以看到sofa-rpc通过Prov
阅读全文
摘要:在《阿里巴巴java开发手册》中指出了线程资源必须通过线程池提供,不允许在应用中自行显示的创建线程,这样一方面是线程的创建更加规范,可以合理控制开辟线程的数量;另一方面线程的细节管理交给线程池处理,优化了资源的开销。而线程池不允许使用Executors去创建,而要通过ThreadPoolExecut
阅读全文
摘要:在netty基本组件介绍中,我们大致了解了netty的一些基本组件,今天我们来搭建一个基于netty的Tcp服务端程序,通过代码来了解和熟悉这些组件的功能和使用方法。 首先我们自己创建一个Server类,命名为TCPServer 第一步初始化ServerBootstrap,ServerBootstr
阅读全文
摘要:Map是java中的一种数据结构,围绕着Map接口,有一系列的实现类如Hashtable、HashMap、LinkedHashMap和TreeMap。而其中HashMap和Hashtable我们平常使用的最多。 HashMap与Hashtable表面上看没有太大区别,但在一些使用细节和内部实现上有诸
阅读全文