内存 模式

设计模式-备忘录模式在Java中使用示例-象棋悔棋

场景 备忘录模式 备忘录模式提供了一种状态恢复的实现机制,使得用户可以方便地回到一个特定的历史步骤,当新的状态无效 或者存在问题时,可以使用暂时存储起来的备忘录将状态复原,当前很多软件都提供了撤销(Undo)操作, 其中就使用了备忘录模式。 备忘录模式结构图 在备忘录模式结构图中包含如下几个角色: ......
模式 设计模式 备忘录 象棋 示例

设计模式-中介者模式在Java中使用示例-客户信息管理

场景 欲开发客户信息管理窗口界面,界面组件之间存在较为复杂的交互关系:如果删除一个客户, 要在客户列表(List)中删掉对应的项,客户选择组合框(ComboBox)中客户名称也将减少一个; 如果增加一个客户信息,客户列表中需增加一个客户,且组合框中也将增加一项。 中介者模式概述 如果在一个系统中对象 ......
中介者 模式 设计模式 示例 中介

解释器模式-17

### 概述 解释器模式 (Interpreter Pattern) 定义语言的文法,同时创建一个解释器解释该语言的句子。 **优点**:易于扩展、符合“开闭原则”。 **缺点**:执行效率低,复杂文法难以维护。 图示: ![image](https://img2022.cnblogs.com/bl ......
解释器 模式 17

单例模式小记

## 1. 概念 单例模式是一种设计模式。 保证一个类只有一个实例,提供一个全局访问点。 ## 2. 实例 - 构造函数私有化,防止外部创建对象。 - 提供静态成员函数 `getInstance`,获取单例指针。 - 使用静态指针保存单例实例。 ```cpp class Singleton { pu ......
小记 模式

设计模式-桥接模式

# 桥接模式(Bridge) ## 模式定义 + 将抽象部分和实现接口分离,使它们可以独立变化。是一种结构性模式。 ## UML 图 ## 时序图 ## 角色定义 1. 抽象类(Abstraction) + 用于定义抽象类的接口,其中定义了一个 Implementation 实现类接口的对象,并可以 ......
模式 设计模式

使用Delphi编写DLL劫持内存补丁

在有些破解程序时,不能暴力修改程序,修改后,程序就不能正常运行,因为很多程序启动时有自我的校验,但是当程序加载到内存后,在内存中修改相应的地方就可以达到破解的效果。那么怎样在不破坏程序的前提下,达到修改程序呢? 当一个可执行文件运行时,Windows加载器将可执行模块映射到进程的地址空间中,加载器分 ......
补丁 内存 Delphi DLL

8.3 内存映射

Linux通过将一个虚拟内存区域与一个磁盘上的对象(object)关联起来,以初始化这个虚拟内存区域的内容,这个过程称为内存映射(memory mapping)。虚拟内存区域可以映射到两种类型的对象中的一种: 1) Linux文件系统中的普通文件:一个区域可以映射到一个普通磁盘文件的连续部分,例如一 ......
内存 8.3

Netty 堆外内存泄漏

异常堆栈信息: 1 LEAK: ByteBuf.release() was not called before it's garbage-collected. See https://netty.io/wiki/reference-counted-objects.html for more info ......
内存 Netty

sandbox下的内存泄露问题

情况一:使用了ProcessControl 特性,shutdown无法释放SandboxClassLoader分析:EventListenerHandlers.handleEvent中的catch (ProcessControlException pce) {final EventProcessor ......
内存 sandbox 问题

设计模式

# 设计模式 ## 设计模式六大原则 ``` 1)开闭原则(总):对扩展开放,对修改关闭 多使用抽象类和接口,用抽象构建架构,用实现进行扩展 2)单一职责原则:每个类应该实现单一的职责 保证一个类只做一件事,如拆分为实体类和Controller类等 3)里氏替换原则:基类可以被子类替换 使用抽象类继 ......
设计模式 模式

inux 系统中的不同进会程不会分配到相同的虚拟内存地址

在正常情况下,Linux 系统中的不同进程不会分配到相同的虚拟内存地址。这是由于虚拟内存管理机制的设计和实现原则决定的。以下是一些解释: 1 地址空间隔离:每个进程有自己独立的虚拟地址空间,它们在逻辑上是隔离的。这种隔离性是通过使用独立的页表来实现的。每个进程都有自己的页表,用于将虚拟地址映射到不同 ......
内存 地址 系统 inux

std::queue 中遇到释放内存错误的问题

项目上有个需求要用到 std::queue 顺序处理消息事件 简单的示例如下: struct MyEvent { MyEvent() { event_ = CreateEvent(nullptr, 0, 0, 0); } ~MyEvent() { std::cout << "MyEvent deco ......
内存 错误 问题 queue std

Linux清理内存,清理储存

因为工作中项目部署服务器后更新迭代或者服务器使用时间长后会出现内存/储存爆满,所以整合了一下,方便以后使用; 清理虚拟内存 查看内存 free -h 清理缓存 输入命令释放内存 0 – 不释放 1 – 释放页缓存 (数字1是用来清空最近访问过的文件页面缓存) 2 – 释放dentries和inode ......
内存 Linux

策略模式+Spring配置类优化多if..else思路

## 图示 ![image](https://img2023.cnblogs.com/blog/1866596/202307/1866596-20230728101801138-171904977.png) ## 1. 现状 > 场景: 假设设备上报不同类型的消息,我们要对不同类型的消息做不同的处理 ......
思路 策略 模式 Spring else

python 单例模式

# python 单例模式 单例模式是一种设计模式,目的是确保一个类只有一个实例,并提供一个全局访问点来获取该实例。 有些类只需要一个全局唯一的实例,例如数据库连接池、线程池、日志记录器等。使用单例模式可以确保这些类只有一个实例存在,从而避免了资源的浪费和不一致的状态。 单例模式通常包含以下几个要素 ......
模式 python

Android-单例模式

单例模式 意图:这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。 public class Singleton { private static Singleton instance = n ......
Android 模式

设计模式-命令模式在Java中的使用示例-桌面程序自定义功能键

场景 欲开发一个桌面版应用程序,该应用程序为用户提供了一系列自定义功能键,用户可以通过这些功能键来实现一些快捷操作。 用户可以将功能键和相应功能绑定在一起,还可以根据需要来修改功能键的设置,而且系统在未来可能还会增加一些新的功能或功能键。 如果不使用命令模式,可能这样实现。 功能键类Function ......
模式 设计模式 示例 命令 桌面

掌握 Python RegEx:深入探讨模式匹配

动动发财的小手,点个赞吧! ## 什么是正则表达式? 正则表达式通常缩写为 regex,是处理文本的有效工具。本质上,它们由一系列建立搜索模式的字符组成。该模式可用于广泛的字符串操作,包括匹配模式、替换文本和分割字符串。 ## 历史 ![](https://img2023.cnblogs.com/b ......
模式 Python RegEx

linux内存日志 | journalctl指令

## 摘要 ## 一、linux内存日志 1. 就是有些日志仅仅在系统允许过程中写在内存当中,但是并不会保存到硬盘当中 2. 重启后,内存日志就会情况 ## 二、指令 | 指令 | 功能 | 说明 | 选项 | | | | | | | journalctl | 查看全部 | | | | journa ......
指令 journalctl 内存 linux 日志

八、Web应用模式

8.1、web应用模式 在开发Web应用中,有两种应用模式: 前后端不分离[客户端看到的内容和所有界面效果都是由服务端提供出来的。 前后端分离【把前端的界面效果(html,css,js分离到另一个服务端,python服务端只需要返回数据即可)】 前端形成一个独立的网站,服务端构成一个独立的网站 应用 ......
模式 Web

Keepalived非抢占模式配置

# Keepalived非抢占模式配置 ##1、前言 非抢占模式,这种模式主要是针对主机崩溃,集群已经重新选出新的主机,并且原来的主机重新上线后并不争夺主机的情况。这种模式适合那些倾向于认为崩溃的主机即便上线还是会出现崩溃的场景。 这种模式的核心思想是将所有节点的优先级(priority)值设为相同 ......
Keepalived 模式

使用急救模式 修复 GRUB 引导故障

实验 模拟破坏 GRUB 中的 grub.cfg 文件 重新启动后会进入这样的界面 退出,并进入急救模式 进入bash shell 界面 ,输入 1 继续 切换到硬盘的系统根环境 重新将GRUB引导程序安装到第一块硬盘 /dev/sda 的 MBR 扇区 重新构建 grub 菜单的配置文件 退出重启 ......
故障 模式 GRUB

急救模式下修复mbr扇区

mbr引导扇区别破坏时 引导镜像急救模式进行mbr扇区恢复 故障原因 病毒,木马等造成破坏 不正确的分区操作,磁盘读写误操作 故障现象 找不到引导程序,启动中断 无法加载操作系统,开机后黑屏 解决思路 提前做好备份文件 以安装光盘引导进入急救模式 从备份文件中恢复 常用命令 dd if = 从哪里复 ......
模式 mbr

息屏模式下收到信息不亮屏问题

首先检查config_dozeComponent 属性配置的组件信息是否为空 > 备注:config_dozeComponent 属性用于定义休眠模式组件的组件名称,当设备进入休眠模式时,该组件会限制应用程序的后台活动,并根据需要关闭一些功能 检查以下config文档: 其它分析: ......
模式 问题 信息

Oracle内存结构

# Oracle内存结构 ## 内存结构 Oracle数据库的主要内存结构包括: 1. SGA(System Global Area):系统全局区域,用于存储共享的内存结构。主要包含: - 数据库缓冲区:存储数据库块。 - 红色日志缓冲区:临时存储在线重做日志记录。 - 共享池:存储SQL语句、数据 ......
内存 结构 Oracle

8 虚拟内存

一个系统中的进程是与其他进程共享CPU和主存资源的。然而,共享主存会形成一些特殊的挑战。随着对CPU需求的增长,进程以某种合理的平滑方式慢了下来。但是如果太多的进程需要太多的内存,那么它们中的一些就根本无法运行。当一个程序没有空间可用时,那就是它运气不好了。内存还很容易被破坏。如果某个进程不小心写了 ......
内存

形参动态内存开辟和柔性数组

//柔性数组//定义:结构体最后一个成员允许是未知大小的数组// 优点;在开辟空间时,连续开辟,便于释放空间,不会因多次开辟,导致释放空间出错// 开辟空间时,节省动态开辟次数,节省空间,提升内存空间利用率,减少内存碎片// 访问效率更高// // struct S{ int n; int* arr ......
柔性 数组 内存 动态

free -h查看内存情况,发现free部分远小于available

原因是buff/cache占用了大量内存,需要手动释放下: echo 3 > /proc/sys/vm/drop_caches #参数说明: #0:不释放(系统默认值) #1:释放页缓存 #2:释放dentries和inodes #3:释放所有缓存 Cache Memory(缓存内存) 当读写文件的 ......
free available 内存 情况 部分

面向对象的设计模式

SOLID设计原则(面向对象) | | 一句话归纳 | 目的 | | | | | 单一职责 | 一个类或模块应该只有一个引起它变化的原因。 | 一个类或模块应该只有一个主要职责,这样可以使代码更加清晰、易于理解和维护。 开闭原则 | 软件实体(类、模块、函数等)应该对扩展开放,对修改关闭。 | 强调 ......
设计模式 对象 模式

linux常用内存相关命令总结

查看某个pid占用物理内存的峰值 cat /proc/pid/status|grep -E "VmHWM|VmRSS" 参考信息:(23条消息) Linux下查看某一进程占用的内存_Jeremy_Lee123的博客-CSDN博客 内核内存泄漏常用工具 kmemleak Kmemleak是Linux内 ......
命令 内存 常用 linux