自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 面试问题(很多细节出乎了我的意料)

2.这玩意加了所有的模板,容易导致有些模板函数你可能不想写,但是他也给你硬塞过来了,一是容易导致安全性问题(有些不想让别人访问的变量别人也能访问了)4.使用接口应该要实名认证:世上没有不透风的墙,同理,接口总会有破绽,留下实名认证方便出了事到时候找人,同时也方便接口的收费进行商业化。优点自不必说,全部的模板函数都给你整完了,写的舒服的很,也不怕忘记了HashCode和Equal函数这种函数,导致后面出问题。2.数据单节点访问,因为存储在本地,别的节点没法直接通过网络访问呢本地的数据。

2024-12-19 17:36:21 237

原创 如何使用CE来获取游戏的基址(以植物大战僵尸为例)

可以看出阳光变为了6666,我们就实现了一个基础的通过内存来修改游戏数据目的,但是这个目的并不如预取中的完美——因为每次游戏重启它的内存地址都会变化,那么有没有什么办法可以避免这个问题呢?因为大部分游戏都有一个叫基址的东西(不懂的同学自己去搜),而游戏程序每次运行时的代码都是不变的,那么很明显,每个变量的位置相对于基址也是不变的,于是我们可以通过游戏的基址来确定游戏的位置,然后再通过其相对于基址的偏移量来确定其目前的地址,达到“以静制动”的目的。那么我们还是以阳光为例子,假设我们已经获取了阳光的地址。

2024-12-07 23:36:37 901

原创 微服务保护——雪崩问题以及其解决思路

在微服务中,一个经常出现的场景是服务A调用服务B(而且是同步调用),但是由于某些原因服务B挂了,这时候服务A就会被卡住,随着被卡住的请求越来越多服务A的资源终将被耗尽,这时候服务A将不能处理任何请求了,导致服务A也“挂掉”,然后就这么一路崩溃,最终导致整个微服务群出现故障。2.业务隔离:为每个要调用其他的微服务的业务设置一个线程池,当要调用其他微服务时必须从线程池里面调用数据,这样就可以防止因其他微服务处理速度慢而导致的过度使用资源了。懒得自己画图了,用链式反应这个图意思一下,大家明白什么意思就好。

2024-09-07 16:01:55 256

原创 面试记录之用友

以SelectById为例:首先前端至少应该传来Id字段,然后在通过某个Mapper调用SelectById函数,对于这个Mapper我再获取其对应的表Table和数据库DataSource,获取到之后,我创建一个Stringbuilder,用一个循环逐步将表上的字段拼接上去,最后再令Id字段等于传进来的那个字段,拼接完了SQL语句再调用SqlSource查找,最后将查找值返回即可。用户表 <=用户_角色表=> 角色表<=角色_资源表=> 资源表。1.尽量用连接,避免子查询,连接一般比子查询更高效。

2024-09-05 22:24:23 237

原创 对AQS的个人理解和解析

(如果前面的节点ws是1就再找前面的,因为如果前面节点ws是1说明其放弃抢锁了,马上要离开队列,自然不会唤醒后面线程)AQS是JUC包下的一个抽象类,本身并没有什么具体的业务实现但是其为为Java的并发工具提供了可实现的方法,ReentrantLock,ThreadPoolExecutor等工具类都是基于AQS去实现的;:当某个线程获取到锁资源了,其他的线程再想获取锁资源时会发现无法获取,这时候,线程会包装成为一个node,将其放在同步队列中。值得注意的是:同步队列使用的是双向链表的形式存储线程。

2024-07-24 19:51:35 656

原创 Java内存模型(JMM)的一些个人理解

加了volatile关键字之后,线程对相应的变量的值进行修改时会立即将修改后的数据刷新到内存中去。由于数据刷新必须经过总线,当对相应的线程做了标注的时候,其他线程能通过总线嗅探机制感知到相应的变量的变化,并将变量标记为无效,后续使用变量时就会去找最新的变量。因为每个线程无法直接对主内存的内容进行修改,线程内部内存会将需要的主内存的数据拷贝一份作为副本。JMM(Java 内存模型)主要定义了对于一个共享变量,当另一个线程对这个共享变量执行写操作后,这个线程对这个共享变量的可见性。

2024-07-21 22:09:17 536

原创 KMP算法的原理与实例

KMP算法是一种能够大大降低字符串查找的时间复杂度的算法,正常来说,设被查找字符串(以下简称主串)的长度为n,需要匹配的字符串(以下简称)副串的长度为m,在最差情况下,对于0<=i<=n-m的主串里的每一个元素都需要查找m的长度,故时间复杂度为O(NM)。校赛考了个这种算法,当时不懂KMP算法于是就光荣的TLE了,赛后看题解发现是没见过的算法,写篇题解纪念一下。递推构造next数组的方法如下:其中ss为。

2023-05-18 23:48:25 918 1

原创 浅谈线段树的查找与修改

线段树的建立修改与查找

2023-04-18 00:03:27 80 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除