我的编程探索之旅

不管这一天有多难过,记得认真洗脸冲澡

HOT
DISCOVERY

List#subList和Spring#split的使用陷阱

"使用不当会引起内存泄漏!!"

前言 如果Java应用程序出现了内存泄露,千万别着急着把应用杀掉,而是要保存现场。如果是互联网应用,可以把流量切到其他服务器。保存现场的目的就是为了把 运行中JVM的heap dump下来。 正文 裁剪List的时候这样子使用的话就会有一个引发内存泄漏的陷阱: myList = myList.subList(fromIndex, toIndex); 特别是在循环调用的时候。 来...

网络IO中的同步、异步、阻塞和非阻塞

"在学习网络编程过程中,经常会把这几个概念搞混淆"

同步I/O与异步I/O区别 我们先来看一下操作I/O时涉及的对象和步骤(这里我们以read为例):   这里会涉及到两个系统对象,一个是调用这个I/O的应用进程(或线程),另一个就是系统内核。当一个read操作发生时,它会经历两个阶段:1)等待数据就绪 (可读);2)将数据从内核拷贝到应用进程中 。这两个阶段很重要,因为各种I/O模型的区别就是在这两个阶段上各有不同的情况。 下边我们来看...

双向数据绑定与单向数据绑定

前言 春节后第一篇。 正文 在react中是单向数据绑定,而在vue和augular中的特色是双向数据绑定。为什么会选择两种不同的机制呢?我猜测是两种不同的机制有不同的适应场景,查了一些资料后,总结一下。 一、各自优势 双向数据绑定给人的最大的优越感就是方便。当数据data发生变化时,页面自动发生更新。但是有一个缺点也是因为自动更新而导致的,因为这样你就不知道data什么时候变了,...

Netty之心跳与重连

"设计一个心跳机制"

最近因为项目组在优化跨服重连的问题,就简单地研究了下Netty的心跳和重连,先来简单看一下这个过程: 1)客户端连接服务端 2)在客户端的的ChannelPipeline中加入一个比较特殊的IdleStateHandler,设置一下客户端的写空闲时间,例如5s 3)当客户端的所有ChannelHandler中4s内没有write事件,则会触发userEventTr...

事件驱动编程RxJava

"简化我们日常的事件驱动编程"

RxJava的基本入门可以了解 给 Android 开发者的 RxJava 详解 这篇博文。 它通过Observable这个统一的接口,对其相关的事件,在空间维度和事件维度进行重新组织,来简化我们日常的事件驱动编程。 引用RxJava 沉思录的一段话: 在基于Callback的编程范式中,我们的Callback是没有维度的。它只能够响应孤立的事件,即来一个事件,我处理一个事件。假设...

Java安全管理器SecurityManager

"程序实施安全策略的类"

前言 大家在阅读源码(特别是类库)的时候,是不是会发现这样的代码,然后在想这个是做什么的: SecurityManager sm = System.getSecurityManager(); if (sm != null) { security.checkRead(path); } Java安全 总的来说,java安全应该包括两个方面的内容:一是Java平台(即是Java运行环境)...

三七互娱 十周年

"我是一颗洋葱 来地球追梦"

回顾过去,展望未来 凌晨三点后 漫步在街头 一路上穿过 霓虹和高楼 也许下一个街口 就能和梦想接头 也许走完这一生 我也找不到出口 人生是一场华丽的冒险 我抵抗着睡意 ...

动态,敏捷的Groovy

"了解下Groovy的强大吧!"

前言 因为项目中需要用到Groovy语言,所以对它一直有做了解,本文主要总结一下Groovy在Java与Spring中的用法。希望本文对准备学习使用或者对 Groovy 感兴趣的同学有所帮助,如有不对之处还望指出哈,对这门语言的理解还是比较肤浅的。 简介 Groovy 是 Apache 旗下的一门基于 JVM 平台的动态/敏捷编程语言,在语言的设计上它吸纳了 Python、Ruby 和 S...

Guava使开发更简单之RangeMap

"在范围内取值,RangeMap简直不要太方便~~"

简介 RangeMap是一种集合类型(collection type),它将不相交、且不为空的Range(key)映射给一个值(Value)。RangeMap跟一般的Map一样,存储键值对,按照键来取值。不同于Map的是键的类型必须是Range,也既是一个区间。 和RangeSet一样,实现RangeMap也是一个接口,实现它的也只有两个类,分别为ImmutableRangeMap和Tre...

Hello 2019

"Hello World, Hello Blog"

“🙉🙉🙉 ” 前言 Ariescat 的 Blog 就这么开通了。 本来打算在年前完成 Blog 的搭建,不曾料想踩了很多坑。。。 跳过废话,直接看技术实现 2019 年,Ariescat Blog 总算是搭建好了。 最开始写博客是在CSDN这个平台上,CSDN确实不错,支持markdown在线编辑。 在一次偶然间,发现了 GitHub Pages 这种神奇的存在,觉...

 当前页 3  /  总页数 3
喜迎
春节