如何从dump文件中提取出C#源代码

2021-03-28
一:背景 相信有很多朋友在遇到应用程序各种奇葩问题后,拿下来一个dump文件,辛辛苦苦分析了大半天,终于在某一个线程的调用栈上找到了一个可疑的方法,但 windbg 常常是以 汇编 的方式显示方法代码的,可惜的是,现如今的汇编,有多少像我们这些速成系码农还看的懂呢?

Android运动健康睡眠自定义控件的实现

2021-03-28
效果图 代码 /** * * 日图表 * zrj 2020/8/25 */ class SleepDayChart(context: Context, attrs: AttributeSet?) : View(context, attrs) { //屏幕宽高 private var scrWidth = 0f private var scrHeight = 0f private var xData: Array<String> = arrayOf("20:00", &quo

使用docker更改容器内root密码的操作

2021-03-28
1.在制作dockerfile的时候使用如下命令设置ssh密码 RUN echo "root:root" | chpasswd 2.现在需要在容器生成后更改容器内root密码 使用 docker exec -it centos7.5 root:newpassword | chpasswd 命令执行成功,但是密码更新失败. 正确的方式如下: PASS='newpassword ' && echo -e "KaTeX parse error: Expected '

Redis Sentinel的使用方法

2021-03-28
1.sentinel monitor 用法: sentinel monitor master-name  ip port quorum 其中,master-name是主节点的名称,ip,port不用解释,是主节点的地址信息. 最后的quorum是判断主节点最终不可达所需要的票数.这个值越大,判断越可信,这个值越小,判断越不可信,一般这个数字取的是sentinel节点数目的一半+1.同时,该值还与sentinel节点的领导者选举有关,至少要有max(quorum,num (sentinel)/2+

python 多进程和多线程使用详解

2021-03-28
进程和线程 进程是系统进行资源分配的最小单位,线程是系统进行调度执行的最小单位: 一个应用程序至少包含一个进程,一个进程至少包含一个线程: 每个进程在执行过程中拥有独立的内存空间,而一个进程中的线程之间是共享该进程的内存空间的: 计算机的核心是CPU,它承担了所有的计算任务.它就像一座工厂,时刻在运行. 假定工厂的电力有限,一次只能供给一个车间使用.也就是说,一个车间开工的时候,其他车间都必须停工.背后的含义就是,单个CPU一次只能运行一个任务.编者注: 多核的CPU就像有了多个发电厂,使多工厂

Android实现本地Service方法控制音乐播放

2021-03-28
问题现象描述:在Activity中控制播放时,按返回键退出应用后,音乐可在后台继续播放.重新进入app,音乐无法停止,重新点击开始播放音乐,出现重复的音乐同时播放的现象(多个同时播放).如何解决? 解决方法:使用本地Service的方式来控制音乐的播放,app返回退出了,重新进入App也可以正常终止. 1.主Activity控制音乐 的开始.暂停.停止.退出空能,(具体实现在下面MusicService.java中实现) /** * Activity播放广播,返回键返回后,重新进入无法停止 *

java操作mongodb之多表联查的实现($lookup)

2021-03-28
最近在开发的过程中,一个列表的查询,涉及到了多表的关联查询,由于持久层使用的是mongodb,对这个非关系型数据使用的不是很多,所以在实现此功能的过程中出现了不少问题,现在此做记录,一为加深自己的理解,以后遇到此类问题可以快速的解决,二为遇到同样问题的小伙伴提供一点小小的帮助. 全文分为两部分: 使用robo3t编写多表关系的查询语句 将编写的查询语句整合到java项目 多表联查的查询语句: 此处使用的为mongodb的robo3t可视化工具,先说下需求:从A(假如说是日志表)表中查询出符合条件

vue+element+oss实现前端分片上传和断点续传

2021-03-28
纯前端实现: 切片上传 断点续传 .断点续传需要在切上上传的基础上实现 前端之前上传OSS,无需后端提供接口.先上完整代码,直接复制,将new OSS里的参数修改成自己公司OSS相关信息后可用,如遇问题,请继续往下看. oss官方文档 https://help.aliyun.com/document_detail/111268.html?spm=a2c4g.11186623.6.1111.5a583a07LknRUO 代码允许所需环境:vue + element + ali-oss 安装ali-

Redis Sentinel的基本搭建

2021-03-28
Redis Sentinel的概念 我们知道Redis主从模式下,一旦主节点由于故障不能提供服务,需要人工将从节点晋升为主节点,同时还要通知应用方更新主节点的地址.然后在很多应用场景下这种故障处理的方式是无法接受的,应用程序需要实时感知当前的可用节点.为了解决这个问题,Redis Sentinel应运而生,也称之为"哨兵". 介绍sentinel之前,先来了解几个redis的概念, 主节点master:Redis进程,主服务 从节点slave:redis进程,从服务 Redis数据节点

SpringCloud Stream使用解析

2021-03-28
SpringCloudStream 官方定义Spring Cloud Stream 是一个构建消息驱动微服务的框架. 应用通过inputs和outputs来与Spring Cloud Stream中binder对象交互.通过我们配置来binding(绑定),而Spring Cloud Stream中的binder对象负责与消息中间件交互.所以,我们只需要搞清楚如何与Spring Cloud Stream 交互就可以方便使用消息驱动的方式. 通过使用Spring Integration来连接消息代

Java如何发起http请求的实现(GET/POST)

2021-03-28
前言 在未来做项目中,一些功能模块可能会采用不同的语言进行编写.这就需要http请求进行模块的调用.那么下面,我将以Java为例,详细说明如何发起http请求. 一.GET与POST GET和POST是HTTP的两个常用方法. GET指从指定的服务器中获取数据 POST指提交数据给指定的服务器处理 1.GET方法 使用GET方法,需要传递的参数被附加在URL地址后面一起发送到服务器. 例如:http://121.41.111.94/submit?name=zxy&age=21 特点: GET请求

python模块中判断全局变量的赋值的实例讲解

2021-03-28
1.在模块中,我们需要判断__name__是否被赋值为"__main__". python fibo.py <arguments> 2.在脚本执行的情况下,模块的__name__属性将被赋值为__main__,这就是原因所在. $ python fibo.py 50 0 1 1 2 3 5 8 13 21 34 3.若以模块导入,则不会执行: >>> import fibo >>> 知识点扩展: Python动态声明变量赋值代码实例 通过

详解MySQL 幻读及如何消除

2021-03-28
这是一篇数据库隔离级别的科普文章,旨在了解数据库中著名的幻读现象,为了专注,对脏读.不可重复读不作讨论. 事务隔离级别 MySQL有四级事务隔离级别: 读未提交 READ-UNCOMMITTED: 存在脏读,不可重复读,幻读的问题 读已提交 READ-COMMITTED:不存在脏读,但存在不可重复读,幻读问题 可重复读 REPEATABLE-READ:不存在脏读,不可重复读问题,但存在幻读问题 序列化SERIALIZABLE:解决脏读,不可重复读,幻读问题,但完全串行执行,性能最低 什么是幻读

详解Android系统启动过程

2021-03-28
计算机是如何启动的 计算机的硬件包括:CPU,内存,硬盘,显卡,显示器,键盘鼠标等输入输出设备.所有的软件都是存放在硬盘中,程序执行时,需要将程序从硬盘上读取到内存中,然后加载到CPU中来运行.当按下开机键时,内存中什么都没有,因此需要借助某种方式,将操作系统加载到内存中,而完成这项任务的就是BIOS. 引导阶段 BIOS:BIOS是主板芯片上的一个程序,计算机通电后,第一件事情就是读取BIOS. BIOS首先进行硬件检测,检查计算机硬件能否满足运行的基本条件.如果硬件出现问题,主板发出不同的蜂

Docker tomcat的设置内存大小配置方式

2021-03-28
安装再docker中的tomcat,在下载大文件或者某些情况下,会出现tomcat的内存溢出等情况,所以需要配置tomcat的内存大小,docker中的tomcat内存大小配置有两种方式: 一.挂载docker中的配置文件 通过将docker中tomcat的catalina.sh配置文件挂载到宿主机中,然后再catalina.sh配置jvm内存大小即可. 1.需要重新运行一个tomcat容器(注意: 端口和容器名称不能重复) docker run -d \ -v /server/webapps:

Python实现&quot;验证回文串&quot;的几种方法

2021-03-28
一.LeetCode--125.验证回文串 1.问题描述 给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写. 说明:本题中,我们将空字符串定义为有效的回文串. 2.示例 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: True 示例 1: 输入: "race a car" 输出: False 示例 3: 输入: "!!!" 输出: True 二.解题分析 在排除空格及特殊

OpenCV如何去除图片中的阴影的实现

2021-03-28
一.前言 如果你自己打印过东西,应该有过这种经历.如果用自己拍的图片,在手机上看感觉还是清晰可见,但是一打印出来就是漆黑一片.比如下面这两张图片: 因为左边的图片有大片阴影,所有打印出来的图片不堪入目(因为打印要3毛钱,所以第二张图片只是我用程序模拟的效果). 那有什么办法可以解决吗?答案是肯定的,今天我们就来探讨几个去除阴影的方法. 二.如何去除阴影? 首先为了方便处理,我们通常会对图片进行灰度转换(即将图片转换成只有一个图层的灰色图像). 然后我们分析一下,在上面的图片中有三个主色调,分别是

Springboot获取前端反馈信息并存入数据库的实现代码

2021-03-28
导入mybatis依赖 <!--mybatis--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.0.1</version> </dependency> yml实现mybatis依赖 spring: dat

基于JS简单实现手持弹幕功能+文字抖动特效代码

2021-03-28
前段时间抖音上有个抖动弹幕挺火的,于是决定仿写一个,话不多说,先看效果- 效果展示 GIF图看着有点模糊,但实际效果还是不错的. 第一眼看上去也不知道该咋做,那就先把要实现的功能拆解一下吧. 生成一个铺满全屏的黑色背景,写上文字,然后内容居中 实现无缝滚动 实现文字抖动特效 旋转90度(默认横屏展示) 代码如下 .html <div class="barrage-box"> <div class="text">抖动字幕</div>

redis如何后台启动的方法

2021-03-28
当安装好redis之后,运行redis-server命令之后,显示如图所示: 但是这样没有办法在这个tab下做任何操作了,因为这个时候使用Ctrl+c之后,就变成了这个样子 然后就关闭了,那么我想让redis在后台启动怎么办呢? 在安装redis之后,我们可以可以找到一个叫redis.conf的文件,这个文件是redis的配置文件位置,如图所示: 使用vim命令打开该文件,如图所示: 其实英文好的同学可以好好读一下这个配置文档,受益匪浅的,上来就是redis如何来调用这个配置文档,并给出了示例,