记忆的海底

区块链学习(一)——区块链中的密码学,Hash与签名

最近有个想实现的东西,因此一直在学习多线程,分布式相关的知识,由于想做成去中心化的,所以还是要学习一下区块链,于是空闲时间学习了北大的区块链公开课。本系列文章作为笔记使用。这节只是一些概念介绍,都是比较常识化的内容,本来不打算记的,但是老师又讲的比较精彩,因此还是记一下吧(比特币被称为加密货币,但实

Java多线程(五)——线程等待/通知机制之条件变量(二)

上一章节的最后,我们提到了Object提供的wait/notify的一些不足,主要有以下几点:notify只会随机唤醒等待在锁上的任意一个线程,并不一定是我们想要唤醒的。notifyAll会将全部等待在锁上的线程唤醒,虽然while(!保护条件)代码块保证了在全部唤醒线程时,被提前唤醒的线程不会执行

Sound Horizon Kingdom!!!!!!

陛下!!!!下载地址:AComingNearestFuture.zip

Java多线程(四)——等待,并心怀希望吧。线程的等待/通知机制(一)

等待/通知机制今天我们来看Java多线程的等待——通知机制。多线程的环境下,往往有这么一种需求,当某个线程执行到某个地方的时候,需要来自其他线程的数据,但我们又无法确定它是否已经准备就绪,你想让其他线程在准备好数据之后,给你打个招呼,在这之前,你就先等一会,等他招呼来了,你再继续执行。有的同学肯定第

Java多线程(三)——中断线程

今天我们继续来看多线程。中断线程概述要想中断一个正在执行中的线程,在远古时期Thread提供了一个方法,stop(),但他由于会造成很多问题,现在已经不推荐使用了。我初略看了一下stop的源码注释,大意讲的是stop()方法用于强制结束线程,但他天生不安全,如果一个线程使用stop方法结束,会导致其

对于前后端分离时,用户权限设计的一点思考

在模板引擎时代,对于用户权限的管理是后台的事情,无论是对于API的请求限制,还是对页面内容渲染的控制,比如对按钮级别的元素进行显示与隐藏,这些在模板引擎中都不是问题,各个模板引擎也开发了大量标签,帮助我们对页面上要显示的内容进行控制。但如今前后端分离的开发方式已经流行很长一段时间了,前后端各司其职,

Shiro安全框架(一)基本概念以及与SpringBoot的整合

ApacheShiro是一款运用广泛的Java安全框架,特点是使用起来比较简单,Api比较人性化。最近要用到这玩意,提前复习一下相关概念。(下文Shiro的核心组件部分摘自张开涛/著《跟我学Shiro》)1、Shiro的核心组件Subject:在Shiro中,Subject是对外API的核心,他代表

Java多线程(二)——守护线程,以及Java线程的“父子关系”

上一篇文章里,我们知道了,当线程对象被创建时如果不指定线程组,构造器会默认指定当前线程所在的线程组作为新线程的线程组,在线程组的层面上,子线程和父线程实际上是平级的,并没有实际上的区别。守护线程今天我们来看看守护线程。守护线程本身很简单,只要在线程start方法执行之前,为线程对象设置setDaem

Java多线程基础(一)——线程和线程组

工作中很少真正用到多线程,毕竟CRUD就完事了,但是作为一名Coder,还是很想弄明白底层的一些东西,之前也看过《Java并发编程实战》,但由于没有总结输出,以至于看了就忘==。前几天在学习JVM的类加载器的时候,发现线程里有一个getContextClassLoader()方法,心想着是时候对Th

JVM学习(三) 类加载器——双亲委派机制(二)

上一章我们了解到了双亲委派机制到底是个什么样的东西,但为什么要这样设计呢?今天主要在这方面进行探究。类加载器,虽然只用于实现类的加载动作,但它在Java程序中起到的作用却远远不限于类加载阶段。对于任意一个类,都需要由加载它的类加载器和这个类本身一同确立其在Java虚拟机中的唯一性,每一个类加载器都拥