configure流程 方法linux

写给准备跳槽的小伙伴们的设计模式——工厂方法设计模式

概述 工厂方法模式(FactoryMethod),定义一个创建产品对象的工厂接口,让工厂子类决定实例化那一个产品类。我们把被创建的对象称为“产品”,把创建产品的对象称为“工厂”。如果要创建的产品不多,只要一个工厂类就可以完成,这种模式叫“简单工厂模式”,它不属于 23 种经典设计模式,它的缺点是增加 ......
设计模式 模式 小伙伴 小伙 工厂

RxJava 异常时堆栈显示不正确?解决方法都在这里

本文首发我的博客,github 地址 大家好,我是徐公,今天为大家带来的是 RxJava 的一个血案,一行代码 return null 引发的。 前阵子,组内的同事反馈说 RxJava 在 debug 包 crash 了,捕获到的异常信息不全。(即我们捕获到的堆栈没有包含我们自己代码,都是一些系统或 ......
堆栈 方法 RxJava

Python核对遥感影像批量下载情况的方法

本文介绍批量下载遥感影像时,利用Python实现已下载影像文件的核对,并自动生成未下载影像的下载链接列表的方法~ ......
遥感 影像 情况 方法 Python

Python自动合并Word文件同时添加分页符的方法

本文介绍基于Python,实现对多个Word文档加以自动合并,并在每次合并时按要求增添一个分页符的方法。 现有多个Word文档文件,需将其按名称顺序合并为一个新的Word文件,且需保证每一次合并时,都另起一页(即新的Word文件一页中,不能出现两个及以上的原本单个Word文件的内容)。 一般的,实现 ......
同时 文件 方法 Python Word

安卓ro.serialno产生的整个流程

前言: 关于ro.serialno这个属性,相信大家都不陌生了,应用层的Build.getSerial(),Build.SERIAL等均是直接或间接的获取了这个属性值。接下来从boot到系统应用,小小的分析一下它的整个流程: 由于是APP经常使用,那我们从应用层分析到底层kernel/boot 一, ......
serialno 流程 ro

修改ctags让fzf.vim插件显示C,C++方法声明的标签

背景 在 vim 中使用 fzf.vim 插件可以进行方便的搜索文件, 源码TAG, GIT 记录等, 最近抽空看了下 BTags 命令在 c, c++ 文件中, 无法显示头文件中的函数声明 标签问题. 比如在头文件中有如下一个函数声明, 使用 BTags 命令是无法显示出这个函数原型的. /* 函 ......
插件 标签 方法 ctags fzf

嵌入式Linux—FreeType矢量字体

freetype矢量字体 常用API 1.FT_Init_FreeType函数是FreeType库中的一个函数,其作用是初始化FreeType库,并返回一个指向FT_Library对象的指针。下面是该函数的参数详解: FT_Error FT_Init_FreeType(FT_Library *ali ......
矢量 嵌入式 FreeType 字体 Linux

嵌入式Linux—输入子系统

输入系统 常见的输入设备有键盘、鼠标、遥控杆、书写板、触摸屏等等,用户通过这些输入设备与Linux系统进行数据交换。 内核中怎样表示一个输入设备 // include/linux/input.h struct input_dev { const char *name; //设备名称 const ch ......
子系统 嵌入式 Linux

0源码基础学习Spring源码系列(一)——Bean注入流程

通过本文,读者可以0源码基础的初步学习spring源码,并能够举一反三从此进入源码世界的大米! 由于是第一次阅读源码,文章之中难免存在一些问题,还望包涵指正! ......
源码 流程 基础 Spring Bean

从Linux Bridge引发的网桥、交换机与路由器区别探究

背景 最近接触docker的网络配置方式,发现其默认会创建一个docker0的Linux Bridge,宿主机上运行的容器可以通过连接该birdge实现与外网的通信,根据bridge这个命名很自然的认为这就是一个传统意义上的硬件网桥的软件实现,然而进一步探究后发现并非如此,Linux Bridge其 ......
路由 路由器 交换机 Bridge Linux

C#实现聊天消息渲染、图文混排(支持Windows、Linux)

在实现聊天软件时,渲染文字表情图文混排是一项非常繁琐的工作,再加上还要支持GIF动图、引用消息、撤回消息、名片等不同样式的消息渲染时,就更加麻烦了。那么有简单的实现办法吗?嗯,有的。 ......
Windows 消息 图文 Linux

探索:优雅地实现异步方法的并行执行

接上篇 通过一个示例形象地理解C# async await 非并行异步、并行异步、并行异步的并发量控制 (废话删了) 没有语法糖,代码一样写,java8没有语法糖,一样能写出高性能代码。但有了C# async await语法糖,水平一般的普通的业务程序员,哪怕很菜,也能写出高性能高吞吐量的代码。 标 ......
方法

linux 基础(6)简单认识 bash

shell 和 bash 是什么? shell 是一种应用程序,在这个程序里输入文字指令,系统就会做出响应的操作。这个“壳程序”是我们使用系统各种功能的接口,学会了 shell 就是学会操作 linux 系统。检索/etc/shells,可以看到当前系统的 shell 有哪些。而 bash (Bou ......
基础 linux bash

linux 基础(7)账号和群组的管理

了解账号和群组的基本信息 账号使用 如何查看 linux 计算机上有哪些账号呢?账号的信息储存在/etc/passwd中,打开就可以看到: less /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologi ......
账号 基础 linux

Linux上安装jdk Tomcat mysql redis等

1.安装JDk 1.1这里使用xshell中xfxp进行文件的上传,将jdk二进制包上传到Linux服务器上 下载地址:https://www.oracle.com/java/technologies/downloads/#java8 或者这里有下载好的安装包:链接:https://pan.baid ......
Tomcat Linux mysql redis jdk

符号化方法

解析组合试图从一个较为机械化的方式帮助我们将组合计数问题从模型直接转为生成函数。 —— $\text{EntropyIncreaser}$ 解析组合为我们提供了一套能处理一系列组合结构计数和渐进估计的方法,分为解析和组合两个部分。 解析的部分主要讨论了如何近似生成函数的系数,而组合的部分则着眼于操作 ......
符号 方法

linux 高效压缩工具之xz的压缩解压使用

xz是什么 高压缩率的工具,它使用 LZMA2 压缩算法,生成的压缩文件比传统使用的 gzip、bzip2 生成的压缩文件更小, 不过xz也有一个坏处就是压缩时间比较长,比7z压缩时间还长一些。不过压缩主要用于归档,不介意的可以忽略。 擅长压缩文本和日志文件,针对这块的压缩率,是目前我发现效率最高的 ......
工具 linux

linux环境编程(3): 使用POSIX IPC完成进程间通信

1. 写在前面 之前的文章总结了使用管道进行进程间通信的方法,除了pipe和fifo,Linux内核还为我们提供了其他更高级的IPC方式,包括共享内存,消息队列,信号量等,本篇文章会通过一个具有完整逻辑功能的示例说明如何使用这些IPC方法。毕竟单纯地查手册,写代码...周而复始,这个过程还是比较枯燥 ......
进程 环境 linux POSIX IPC

django框架之drf:4、序列化器常用字段及参数,序列化器高级用法之source,定制字段数据的两种方法,多表关联反序列化的保存,ModelSerializer的使用

Django框架之drf 一、序列化器常用字段及参数 # 序列化类 》字段类 CharField,除此之外还有哪些其他的 # 序列化类 》字段类,字段类上,传属性的 ,序列化类上,也可以写属性 models.CharField(max_length=32) 1、常用字段 | 字段 | 字段构造方式 ......
序列 字段 ModelSerializer 框架 常用

标准&有效的项目开发流程

代码版本管理 在项目中,代码的版本管理非常重要。每个需求版本的代码开发在版本控制里都应该经过以下几个步骤。 在master分支中拉取该需求版本的两个分支,一个feature分支,一个release分支;feature分支用于接受个人分支merge过来的代码,并用于部署dev环境。feature的代码 ......
项目开发 流程 标准 项目 amp

Python 同步和异步使用Redis集群的方法

目前在做Python项目用到同步和异步的方法使用Redis单机,现在要增加兼容Redis集群。也就说当前项目用到中同步单机,同步集群,异步单机,异步集群都用到了。 ......
集群 方法 Python Redis

Linux音频采集和在国产化平台中遇到的坑(一)

最近在做一个国产化平台的软件项目的开发,是基于国产芯片的银河麒麟系统。其中有一个重要模块,是采集和播放音频数据,播放不用多说了,采集的话,包括采集麦克风和采集桌面系统声音。很多人都觉得银河麒麟不就是linux么,那不直接用ALSA就好了,我原本也是这么想的,但是实际开发下来才发现,还是有各种坑需要自... ......
音频 国产 Linux 平台

Linux音频采集和在国产化平台中遇到的坑(二)

ALSA采集这条路走不通,只能尝试其他途径,这里通过PulseAudio的接口成功实现了国产化平台上采集麦克风和系统声音的功能。 ......
音频 国产 Linux 平台

Python自动批量修改文件名称的方法

本文介绍基于Python语言,按照一定命名规则批量修改多个文件的文件名的方法。 已知现有一个文件夹,其中包括班级所有同学上交的作业文件,每人一份;所有作业文件命名格式统一,都是地信1701_姓名_学习心得格式。 现需要对每一位同学的作业文件加以改名,有很多种需求。 第一种需求,将每一位同学作业文件名 ......
名称 文件 方法 Python

深度剖析 Linux 伙伴系统的设计与实现

在上篇文章 《深入理解 Linux 物理内存分配全链路实现》 中,笔者为大家详细介绍了 Linux 内存分配在内核中的整个链路实现: 但是当内核执行到 get_page_from_freelist 函数,准备进入伙伴系统执行具体内存分配动作的相关逻辑,笔者考虑到文章篇幅的原因,并没有过多的着墨,算是 ......
深度 伙伴 系统 Linux

嵌入式Linux—Framebuffer应用编程

Framebuffer 应用编程 Frame的意思是帧,buffer的意思是缓冲区。Framebuffer就是一块内存(硬件设备),里面保存着一帧图像。 ioctl()函数解析 ioctl()函数非常强大。不同的驱动程序内部会实现不同的 ioctl() ,可以使用各种 ioctl() 跟驱动程序交互 ......
嵌入式 Framebuffer Linux

嵌入式Linux—文件IO

文件IO 在 Linux 系统中,一切都是“ 文件”:普通文件、驱动程序、网络通信等等。所有的操作,都是通过“文件 IO”来进行的。所以,很有必要掌握文件操作的常用接口。 Linux系统的文件有哪些 Linux 的文件既可以是真实保存到存储介质的文件也可以是自身内核提供的虚拟文件,还可以是设备节点 ......
嵌入式 文件 Linux

Linux环境下:程序的链接, 装载和库[静态链接]

看以下例子 main.c extern int x; int main() { int y = 100; swap(&x,&y); return 0; } int x = 1; void swap(int* x, int* y) { int temp = *x; *x = *y; *y = temp ......
链接 静态 环境 程序 Linux

Flutter框架渲染流程与使用

Flutter简述 Flutter是一个UI框架, 可以进行移动端(iOS, Android),Web端, 桌面端开发,它是一个跨平台解决方案。 Flutter的特点:美观,快速,高效,开放。 美观:Flutter内置了美丽的Material Design和 Cupertino widget, 方便 ......
框架 流程 Flutter

Vue 中 Promise 的then方法异步使用及async/await 异步使用总结

转载请注明出处: 1.Promise 的 then 方法使用 then 方法是 Promise 中 处理的是异步调用,异步调用是非阻塞式的,在调用的时候并不知道它什么时候结束,也就不会等到他返回一个有效数据之后再进行下一步处理; 想了解 Promise 的使用,可以看这篇文章: ES6 中 Prom ......
Promise 方法 async await then