首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    dotnet 文档应用的撤销重做设计

    从需求层面上讲,撤销就是撤回到上一个步骤,而重做或者说恢复其实就是在恢复撤销的步骤。可以看到越在后面添加的操作,在撤销的时候越快进行撤销。而越早撤销的操作,在重做的时候就越早重做。...刚好,这就是数据结构的栈的定义,先进入的数据后拿出,后进入的数据先拿出 撤销重做的数据结构层面使用栈是最合适的,在使用了 栈 之后,撤销重做模块就有了一个概念叫 撤销重做栈 在软件开发里面,很多开发的开始是在定义数据结构或者说在设计类...因此咱需要有一个足够通用类型用来定义撤销重做操作 最基础的撤销重做操作其实只有两个动作,一个是就是被撤销,另一个就是被重做恢复,可以定义的类型如下 interface IOperation {...另外,从撤销重做的业务上,也不需要使用抽象类,只需要有撤销和重做两个方法就可以 在应用程序可以根据业务定义多个撤销重做栈的内容,例如说做一个和 PPT 差很多的软件,有编辑和播放两个不同的界面,这两个界面的撤销重做相互独立...在用户重做恢复时,从撤销的栈弹出操作,放入到重做恢复的栈里 随着业务的迭代,其实纯撤销重做栈会有一些通用的撤销恢复的功能还需要额外开发 提供当前合入多个不同的业务的操作做一个的业务,例如我有图片编辑模块

    68040

    MySQL日志 - Redo Log重做日志

    Redo Log称为重做日志,提供再写入操作,恢复提交事务修改的页操作,用来保证事务的持久性。 UNDO LOG称为回滚日志,回滚行记录到某个特定版本,用来保证事务的原子性、一致性。...Redo的组成 Redo Log可以简单分为以下两个部分: 重做日志的缓冲 (Redo Log Buffer) 保存在内存中,是易失的。...(page cache)中去(这是现代操作系统为了提高文件写入效率做的一个优化),真正的写入会交给系统自己来决定(比如 page cache 足够大了)。...那么对于InnoDB来说就存在一个问题,如果交给系统来同步,同样如果系统宕机,那么数据也丢失了(虽然整个系统宕机的概率还是比较小的)。...(系统默认master thread每隔1s进行一次重做日志的同步),事务提交不会触发redo写操作,而是留给后台线程每秒一次的刷盘操作,因此实例crash将最多丢失1秒钟内的事务。

    2.1K30

    不重做系统给硬盘分配合适的空间(分区助手)

    电脑的硬盘是存放我们数据的地方,但是有一个问题就是我们的系统盘(默认的是C盘)一般会很快的就被各种文件占满,但是更可气的是别的盘还没用,造成这样的情况的原因是以下几种: 1、配置电脑的时候C盘是用固态盘分的...,为了启动系统的时候快,所以很多的软件也是直接安装到C盘的。...总之不管什么原因吧,安装系统的时候都会提示说给系统盘分配一定的空间,其实这个不建议很大,最好是不超过99G,原因很简单,百度解释的太繁琐,简言之就是系统盘越大,文件越多,开机读取系统映像文件的速度就越慢...但是如果只分配5G的话,是很小,但是系统文件都放不下肯定也是不行的,所以最好的是50-99G。

    88510

    重做日志和日志挖掘

    SQL> alter system switch logfile; 系统已更改。...Oracle数据库允许多路复用重做日志,也就是说,重做日志的两个或多个相同的拷贝可以自动保持在不同的地点。为了最大效益,存储的位置应在分开的磁盘。...当使用复用重做日志时,LGWR会将相同的redo log信息同时写入多个相同的重做日志文件,从而解决重做日志的单点故障问题。...关于SCN的具体讲解可以参见:http://blog.chinaunix.net/uid-18974058-id-3068592.html 日志文件 日志文件使用操作系统块大小 通常是512bytes...格式依赖于 操作系统 Oracle版本 Redo日志组成 数据头 redo record Redo record 一个redo record记录包括 Redo记录台 一个或多个改变向量 每个redo

    1.3K31

    腾讯云系统镜像和使用镜像创建云主机

    作者:杨升军 镜像:服务器调试好一台制作镜像,其他机器使用镜像安装,避免重复调试,快速上线下线机器 一.创建系统镜像 关闭机器再制作镜像 登录腾讯云官网,进入控制台 选择用于制作镜像的机器==>更多...==> 选择机器 ==> 关机(然后选择制作镜像,镜像名称和描述尽量易懂 相关文档链接: 二.使用镜像创建云主机 使用镜像创建全新云主机(购买云主机) 镜像 ==> centos-64-v64-...src ==> 创建云主机 ==> 后边按照提示选择购买云主机 使用镜像重装系统 选择需要重装系统的机器和使用哪个镜像来重装系统,填写需要重装系统机器的root密码 三.需要跨地区同步镜像如果有问题请联系腾讯云帮忙走后台同步

    16.3K20

    Linux挂载持有系统镜像光驱

    上一篇博客小菌为大家介绍了如何正确的为系统添加硬盘。其中有一个步骤就是挂载。这篇博客小菌就为大家带来如何挂载持有系统镜像光驱的内容。...文章目录 方式1:添加本地ISO镜像文件 方式2:添加外界手动上传的iso文件 总结 方式1:添加本地ISO镜像文件 1.通过虚拟机wmware的如下设置,完成ISO镜像的配置。...挂载iso镜像文件,mount /dev/sr0 /mnt/cdrom ?...方式2:添加外界手动上传的iso文件 1.将iso镜像文件上传到linux文件系统可以在windows或者ios桌面操作系统下先下载一个WinSCP或其他SSH传输工具...总结 linux挂载持有系统镜像光驱一共有两种方法,分别是挂载本地iso镜像文件和外界手动上传的iso文件但考虑到以后在企业中linux服务器不会使用到vmware,所以第一种方法以后基本用不到

    6.7K10

    Oracle 联机重做日志文件(ONLINE LOG FILE)

    1.联机重做日志 记录了数据的所有变化(DML,DDL或管理员对数据所作的结构性更改等) 提供恢复机制(对于意外删除或宕机利用日志文件实现数据恢复) 可以被分组管理 2.联机重做日志组...在事务提交的时候(COMMIT) Redo Log Buffer 三分之一满 Redo Log Buffer 多于一兆的变化记录 在DBWn写入数据文件之前 3.联机重做日志成员 重做日志组内的每一个联机日志文件称为一个成员...日志组被删除后,物理文件需要手动删除(对于非OMF) ALTER DATABASE DROP LOGFILE GROUP n 11.日志的重定位及重命名 所需权限 ALTER DATABASE 系统权限...复制文件到目的位置操作系统权限(写权限) CURRENT状态组内的成员不能被重命名 建议该行为之前备份数据库 重命名或重定位之后建议立即备份控制文件 重定位及重命名的两种方法 添加一个新成员到日志组...CONNECT BY PRIOR) Oracle 用户、对象权限、系统权限 Oracle 角色、配置文件 SQL 基础--> 集合运算(UNION 与UNION ALL)

    1.6K20

    树莓派备份系统镜像并压缩

    前言 手上的pi zero w用了一段时间,上面也部署了相当多的服务应用,都是心血啊,可不想啥时候系统损坏了重装一遍,于是想到备份一波系统镜像 备份 1.本地新建一个文件,将格式改为.img2.如 pizero.img3....树莓派系统内存卡插上电脑4.打开win32 disk imager,镜像文件选择好刚才新建的镜像,驱动选择插上的内存卡5.点击 read (读取)!!!!...这样算是备份好了,但是有个问题,这样相当于将内存卡复制了一份,大小会和原先内存卡一样大.因此我们需要进行压缩 压缩 PiShrink压缩脚本是GitHub的一位大佬写的 (需要Linux环境,将以上的镜像文件将其挂载至...效果相当明显,直接将30G的镜像压缩成4.8G,同时在恢复镜像时,还会自动扩容. 如果想压缩成一个新文件呢?

    2.8K20
    领券