安全测试之探索windows游戏扫雷
扫雷游戏相信很多人都从小玩过,在那个电脑游戏并不多的时代,扫雷成为玩的热度蛮高的一款游戏之一,然而就在有一次,接触到了一次不寻常的扫雷过程,使得后来我也有了这个冲动,也来做一次。通过动态调试,逆向和C来写一个扫雷辅助工具从而提高逆向与编码技能。
待兔 待兔
4年前
Java多态实现原理
Java多态概述多态是面向对象编程语言的重要特性,它允许基类的指针或引用指向派生类的对象,而在具体访问时实现方法的动态绑定。Java对于方法调用动态绑定的实现主要依赖于方法表,但通过类引用调用(invokevirtual)和接口引用调用(invokeinterface)的实现则有所不同。类引用调用的大致过程为:Java编译器将Java源代码编译成c
Wesley13 Wesley13
3年前
IO模型(BIO,NIO,AIO)及其区别
BIO:同步阻塞IONIO:同步非阻塞IOAIO:异步非阻塞IO先弄清楚同步、异步,阻塞、非阻塞概念。io操作分为两部分,发起io请求,和io数据读写。阻塞、非阻塞主要是针对线程发起io请求后,是否立即返回来定义的,立即返回称为非阻塞io,否则称为阻塞io。同步、异步主要针对io数据读写来定义的,读写数据过程中不阻塞线程称为异步io
Stella981 Stella981
3年前
Excel催化剂开源第8波
在VSTO开发过程中,因其和普通的Winform开发有点差别,具体细节笔者也说不清楚,大概是VSTO的插件是寄生在Excel中,不属于独立的进程之类的,其异步方法调用时,未能如Winform那样直接用awaitasync异步方法就结束,仍需要再作简单的处理。使用场景在Excel上直接使用异步方法,貌似有上述提及的问题,不像Winform程序
Stella981 Stella981
3年前
Sentinel源码解析二(Slot总览)
写在前面本文继续来分析Sentinel的源码,上篇文章对Sentinel的调用过程做了深入分析,主要涉及到了两个概念:插槽链和Node节点。那么接下来我们就根据插槽链的调用关系来依次分析每个插槽(slot)的源码。默认插槽链的调用顺序,以及每种类型Node节点的关系都在上面文章开头分析过Sentinel源码解析一NodeSelecto
Wesley13 Wesley13
3年前
Java中多个ifelse语句的替代设计
今天在改老代码的过程中,亲眼见证了一段30个ifelse嵌套的代码...然后搜集了一些资料做了以下简单整理。概述ifelse是任何编程语言的重要组成部分。但是我们编写了大量嵌套的if语句,这使得我们的代码更加复杂和难以维护。接下来,让我们探索如何简化代码的中的ifelse语句写法。案例研究我们经常遇到涉及很
Stella981 Stella981
3年前
Linux学习笔记
之前安装树莓派之后,需要大量的使用linux命令,在慕课网上寻找的教程看看。1、安装学习环境是用的VMbox,安装的CentOS6.8和Ubuntu16.04,安装时虚拟机硬盘10G,/boot分配200M,swap分配2048M,/目录分配其余剩余的空间。Ubuntu的镜像文件小,安装过程中需要联网下载资料,可以选择国内镜像,CentOS安装盘
Stella981 Stella981
3年前
JsRender 前端渲染模板基础学习
JsRender前端渲染模板使用模板,可以预先自定义一些固定格式的HTML标签,在需要显示数据时,再传入真实数据组装并展示在Web页中;避免了在JS中通过“”等手动分割、连接字符串的复杂过程;针对高性能和纯字符串渲染进行了优化;无需依赖DOM和jQuery;优先使用场景:元素重复出现;动态加载数据,并前端显示;JsR
Stella981 Stella981
3年前
Redis(二十):Redis数据过期和淘汰策略详解(转)
原文地址:https://yq.aliyun.com/articles/257459背景Redis作为一个高性能的内存NoSQL数据库,其容量受到最大内存限制的限制。用户在使用Redis时,除了对性能,稳定性有很高的要求外,对内存占用也比较敏感。在使用过程中,有些用户会觉得自己的线上实例内存占用比自己预想的要大。事实上,实例中的内存除
Stella981 Stella981
3年前
Spring InitBean
概述初始化过程无非是读取\解析\注册,相信程序员都能实现它,但是要把它变成一个框架性的工具还是需要走很多路的。1.load即资源加载,具体说就是找到合适的工具读取合适的资源(不同的方法读取不同的资源,下一篇有详解)2.parse即资源解析,这里的标准比较多,先是根据读取XML中的关键字“DTD”来