前言 随着比特币的起起伏伏,区块链技术越来越受到关注。区块链和比特币是当下和人工智能一样风靡的领域。人们开始寻找区块链技术的用武之地,已经有了不少的尝试。但是区块链的价值所在众说纷纭,特别是一些媒体胡乱吹嘘或者是故意贬低,给大家都带来了不小的困惑。其实作为一名技术人员只需要理解其底层实现原理 ...
JDK中的Future特性 在介绍Netty的ChannelFuture之前,我们先来看看JDK中的Future是如何实现的。总的来说就是任务提交的时候会使用装饰器模式,将任务包装成一个FutureTask。当执行器执行该Task的时候,不仅仅会执行用户提交的任务,还会执行装饰器添加的额外操作,例如在执行之前记录当前执行线程 执行完成后将任务结果保存在FutureTask对象内部等。 Thread ...
2020-05-01 20:25 0 586 推荐指数:
前言 随着比特币的起起伏伏,区块链技术越来越受到关注。区块链和比特币是当下和人工智能一样风靡的领域。人们开始寻找区块链技术的用武之地,已经有了不少的尝试。但是区块链的价值所在众说纷纭,特别是一些媒体胡乱吹嘘或者是故意贬低,给大家都带来了不小的困惑。其实作为一名技术人员只需要理解其底层实现原理 ...
前言 这段时间自己在看一些Java中BIO和NIO之类的东西,看了很多博客,发现各种关于NIO的概念说的天花乱坠头头是道,可以说是非常的完整,但是整个看下来之后,自己对NIO还是一知半解的状态,所以这篇文章不会提到很多的概念,而是站在一个实践的角度,写一些我自己关于NIO的见解,站在实践过后 ...
无论什么东西,套用宋丹丹的话,就是都有它的过去、现在和将(jiǎng)来。因此学习一样东西,如果能多学一点它的历史,会让我们对其为何有如此现状少一些纠结,同时才有可能对其未来趋势有靠谱一点点的洞见。昨 ...
故事背景 公司有这样一个需求,需要将某些数据用 BI 工具 Metabase 展示出来,但是这里面就涉及到多个数据库的联合查询的问题。然而这些数据库在不同的机器上面,Metabase 部署基于 ...
前言 我的上一篇博客的案例中,请求锁的线程如果发现锁已经被其他线程占用,它是通过自旋的方式来等待的,也就是不断地尝试直到成功。本篇就讨论一下另一种方式,那就是挂起以等待唤醒。 注:相关代码都来自《 ...
一、Future Netty的Future接口继承了JDK的Future接口,同时提供了更多的方法: 任务成功完成后isSuccess()返回true任务执行过程中有异常,cause ...
多路复用的适用场合 • 当客户处理多个描述符时(例如同时处理交互式输入和网络套接口) • 如果一个TCP服务器既要处理监听套接口,又要处理已连接套接口 • 如果 ...
以下内容针对互斥锁。 为什么需要锁? 锁代表着对临界区的访问权限。只有获得锁的操作对象,才能进入临界区。 锁的本质是什么? 锁的本质是一个数据结构(或者说是一个对象),这个对象内保留着描述锁所 ...