摘要:
linux 下面跑c++ 需要安装GNU 的 C/C++ 编译器。GNU 的 gcc 编译器适合于 C 和 C++ 编程语言。 gcc 和 g++ 的区别无非就是调用的编译器不同, 并且传递给链接器的参数不同。具体而言g++ 会把 .c 文件当做是 C++ 语言 (在 .c 文件前后分别加上 -xc 阅读全文
摘要:
在看AQS内部的时候发现很多使用java.util.concurrent.locks.LockSupport类的东西。 比如CountDownLatch.await 阻塞的时候以及使用阻塞队列进行take、take 方法在线程阻塞的时候也是使用的该类。下面研究其主要的使用方法。 1. 线程状态简单理 阅读全文
摘要:
VisualStudio 编写c++ 代码,参考: https://www.zhihu.com/question/30315894/answers/updated 1. 简单入门 1. helloworld // study1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 阅读全文
摘要:
简单了解下xxl-job-admin 任务调度中心原理。 1. 服务启动 服务启动之后之后,查看开启的线程如下: 可以看到启动的后台线程,接下来查看启动的后台线程所做的事情。 2. 线程开启 1. 服务启动配置类 com.xxl.job.admin.core.conf.XxlJobAdminConf 阅读全文
摘要:
java 中有许多native 方法,下面简单研究下native 方法的实现以及在java 中调用native 方法。 下面以简单的操作加减乘除实现 1. 新建java 类 源码如下: package com.zd.bx; public class Operation { public native 阅读全文
摘要:
简单了解下xxl-job 客户端启动过程相关操作。 1. 客户端搭建过程 1. pom 增加 <!-- xxl-job-core --> <dependency> <groupId>com.xuxueli</groupId> <artifactId>xxl-job-core</artifactId> 阅读全文
摘要:
1. 下载源码 1. 到 https://gitee.com/xuxueli0323/xxl-job 下载源码 2. 源码查看: 可以看到有三个主要项目。 (1) xxl-job-admin:调度中心。 这里可以理解为调度中心,主要就是从界面添加用户、执行器(可以理解为一个任务组)、任务等都是服务写 阅读全文
摘要:
之前在研究Shiro 源码的过程中,发现Shiro 会对request、response、session 进行包装。 下面研究其包装过程以及原理。 Session是通过包装了request, 重写了其获取Session 的方法。 然后重写了一套Shiro 自己的Session 管理机制(这个sess 阅读全文
摘要:
之前在研究认证授权的过程中,简单研究过可以有多个realm,下面研究其多个realm 多种认证鉴权方式以及使用。 1. 单Reaml 认证鉴权过程 0. realm 认证过程: 可以看出,其本身是一个授权器Authorizer。 其作为认证器使用是需要作为认证器 Authenticator 内部的成 阅读全文
摘要:
有时候我们在接口会进行权限鉴定,下面研究其鉴权原理。也就是研究基于角色的鉴权和基于权限码的鉴权。 1. 前置配置 1. shiro 配置 /** * 路径 -> 过滤器名称1[参数1,参数2,参数3...],过滤器名称2[参数1,参数2...]... * 自定义配置(前面是路径, 后面是具体的过滤器 阅读全文