JDK1.8源码分析项目(中文注释)Github地址:https://github.com/yuanmabiji/jdk1.8-sourcecode-blogs1Future是什么?先举个例子,我们平时网购买东西,下单后会生成一个订单号,然后商家会根据这个订单号发货,发货后又有一个快递单号,然后快递公司就会根据这个快递单号将网购东西快递给我们。在这一过程中,这一系列的单号都是我们收货的重要凭证。因
分类:
编程语言 时间:
2020-06-28 11:10:20
阅读次数:
74
JDK1.8源码分析项目(中文注释)Github地址: https://github.com/yuanmabiji/jdk1.8-sourcecode-blogs 1 Future是什么? 先举个例子,我们平时网购买东西,下单后会生成一个订单号,然后商家会根据这个订单号发货,发货后又有一个快递单号, ...
分类:
编程语言 时间:
2020-06-26 12:52:42
阅读次数:
63
Netty 中大量 I/O 操作都是异步执行,本篇博文来聊聊 Netty 中的异步编程。 Java Future 提供的异步模型 JDK 5 引入了 Future 模式。Future 接口是 Java 多线程 Future 模式的实现,在 包中,可以来进行异步计算。 对于异步编程,我们想要的实现是: ...
分类:
Web程序 时间:
2020-04-21 09:45:48
阅读次数:
79
前言 异步编程的概念我在第一章概要的时候,提及了。在此再次简略概要一次。 它采用future模式或者回调模式机制,以避免产生不必要的线程。 异步编程测试的标准 在第一个写这个的原因,是因为测试可能比开发重要。因为在开发一个项目的时候呢?有一个自动化高效精准测试,决定了上线是否稳定。因为程序出bug测 ...
分类:
其他好文 时间:
2020-04-08 18:58:13
阅读次数:
62
前言 初学并发的时候一想到并发,然后就和多线程对等了。这就有一丢丢狭隘了,比如说node是单线程,但是人家可以高并发。说明并发并不是一个简单的多线程问题。 同样很多人说硬件cpu的发展为并发提供基础,在这里也可以看出是其实是为多线程提供基础,为并发提供发展道路。 并发的优点在操作系统单核的时候就体现 ...
分类:
其他好文 时间:
2020-04-08 18:55:18
阅读次数:
62
[TOC] 本文内所有实现的代码均附在文末,有需要可以参考。~~(好奇宝宝们可以粘贴下来跑一下~~ 多线程程序评价标准 安全性: ? 安全性就是不损坏对象。也就是保证对象内部的字段的值与预期相同。 生存性: ? 生存性是指无论什么时候,必要的处理都一定能够执行。失去生存性最典型的例子就是“死锁”。 ...
分类:
编程语言 时间:
2020-04-02 23:02:50
阅读次数:
170
先聊下redis普通的分布式锁,用 1.单节点、主从/哨兵模式的分布式锁,安全吗? 或许你了解过,通过如下方式加锁: 设置锁时,使用set命令,因为其包含了setnx,expire的功能,起到了原子操作的效果,给key设置随机值,并且只有在key不存在时才设置成功返回True,并且设置key的过期时 ...
分类:
其他好文 时间:
2020-03-29 17:46:22
阅读次数:
79
线程实现方式: 1.继承Thread类 2.实现Runnable接口 3.线程池 4.Callable 无论使用继承Thread类还是实现Runnable接口,还是使用线程池都没有办法解决2个问题 1.线程执行没有返回值结果 2.线程执行没有办法抛出异常,只能自己通过try-catch解决 Call ...
分类:
其他好文 时间:
2020-03-23 16:38:37
阅读次数:
62
一.Callable的Future模式 线程实现方式: 1.继承Thread类 2.实现Runnable接口 3.线程池 4.Callable 无论使用继承Thread类还是实现Runnable接口,还是使用线程池都没有办法解决2个问题 1.线程执行没有返回值结果 2.线程执行没有办法抛出异常,只能 ...
分类:
其他好文 时间:
2020-03-23 15:22:56
阅读次数:
71
Java网络通信中AIO使用,既可以在并发情况下减少cpu对内存的占用(异步非阻塞的AIO某种程度可以替代多线程),又相对于传统NIO编程更容易上手。官方提供了两种方式实现AIO的异步通信代码风格,一种是回调方式,另种是future方式。本文针对后者提供一个聊天室的案例。因为全future模式相对于... ...
分类:
其他好文 时间:
2020-03-10 14:21:49
阅读次数:
139