自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 FastDFS整理

一个分布式的文件服务器 服务器为客户端 用于向文件服务器发起增删改查操作 实际的文件存储在Storage中 参考: https://blog.csdn.net/prcyang/article/details/89946190

2020-06-04 20:50:05 32 0

原创 MyCat整理

用于数据库集群 抽象了一个逻辑层的数据库,实现分库、分表、读写分离、主从复制等操作 具体的数据由实际的物理数据库支撑 参考: https://www.jianshu.com/p/c8973edc550a

2020-06-02 19:41:23 39 0

原创 MQ

一个分布式的生产、消费系统 用于传递消息 类似android的Handler ActiveMQ 需要配合Zookeeper https://www.jianshu.com/p/79f8a0457069 RecketMQ 功能更加强大 已经实现了分布式 https://www.jianshu.co...

2020-06-02 19:19:09 37 0

原创 zookeeper整理

zookeeper是一个文件监视系统 节点增删改时 会通知监听的回调 集群时 有一个主机 多个从机 当主机宕机 会使用算法选举一个从机为主机 主机用于写 从机用于读 可以实现分布式锁机制 https://blog.csdn.net/kongmin_123/article/details/8208...

2020-06-02 15:16:30 35 0

原创 qml整理

1、属性 //属性 //type可以为var 表示通用类型 也可以为具体类型 如int,long等 [default] property <type> <name> : <value> //别名 property alias <name> : ...

2020-05-29 21:01:33 38 0

原创 c++智能指针

通用方法 get(); //获取原对象的指针 reset(); //放弃内部对象的所有权或拥有对象的变更, 会引起原有对象的引用计数的减少 use_count(); //返回引用计数的个数 1、auto_ptr c++11已被弃用 2、unique_ptr 独享所有权的智能指针 用于替代a...

2020-05-19 21:46:46 31 0

原创 netty整理

一、Reactor模式 1、传统BIO的服务端模式为: while(true){ //监听到一个连接 则将socket放到一个子线程中处理 socket = accept(); handle(socket) } 2、基于nio的Reactor模式 Reactor模式是将连...

2020-05-09 20:12:25 29 0

原创 epoll-未完成

参考: https://zhuanlan.zhihu.com/p/93609693 https://www.cnblogs.com/Anker/archive/2013/08/17/3263780.html

2020-05-07 00:06:49 58 0

转载 Android使用Usb Accessory模式与linux通信

参考:https://blog.csdn.net/lj402159806/article/details/69940628 1、概述 android端的AOA模式 是使android端作为从设备,外设硬件设备作为主设备,遵循AOA协议进行usb的通信。 2、android端 2.1 manifes...

2020-04-27 15:30:22 52 0

原创 c之番外

1 指针 int i; 定义整型变量 i。 int *p; p为指向整型数据的指针变量。 int a[n]; 定义整型数组a,它有n个元素。 int *p[n]; 定义指针数组p,它由n个指向整型数据的指针元素组成。 int (*p)[n]; p为...

2020-04-24 20:55:20 33 0

原创 c++11 多线程相关

c++线程整理 主要类 说明 atomic 原子变量 thread 线程相关 mutex 互斥量 condition_variable 条件变量 future 一、thread 1、创建 void f1(int n); //普通创建 //如果需要传递引...

2020-04-18 21:44:49 34 0

原创 Mediacodec 华为P9 绿屏

MediaCodec解码 使用SurfaceView进行渲染 MediaCodec.dequeueInputBuffer/MediaCodec.dequeueOutputBuffer获取需要一定的时间 视频为30fps 一开始设置timeoutUs为30ms dequeueOutputBuffe...

2020-04-13 16:08:10 57 0

原创 博客收集

博客收集 音视频 ffplay源码 https://blog.csdn.net/u011928958/category_9450588.html https://www.cnblogs.com/leisure_chn/p/10301215.html

2020-03-28 20:58:51 56 0

原创 android Q open failed: EACCES (Permission denied)

使用android Q的模拟器调试相机 写文件时 写权限手动开启 还一直报open failed: EACCES (Permission denied) 查了很久 终于找到了 <manifest ... > <!-- This attribute is "fal...

2019-11-26 06:42:34 1351 5

原创 mac IDEA配置groovy

第一次使用idea创建groovy项目时,Groovy library没有选项 需要点击create按钮手动配置groovy的sdk 这里要选择的目录位置是groovy/libexec的目录。 两种情况: 1、直接官网下的groovy的压缩包 直接解压,然后目录选择groovy/libexec。...

2019-02-20 23:14:05 1460 1

转载 c++11右值引用

从4行代码看右值引用 概述   右值引用的概念有些读者可能会感到陌生,其实他和C++98/03中的左值引用有些类似,例如,c++98/03中的左值引用是这样的: int i = 0; int&amp; j = i;   这里的int&amp;是对左值进行绑定(但是int&am...

2018-12-20 20:09:12 850 2

原创 -fno-elide-constructors

c++11 测试右值 临时对象的构造 编译器会自动优化导致有些流程未打印 需要添加-fno-elide-constructors标记 g++直接添加 cmake 使用SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-elide-constructo...

2018-12-20 18:12:09 437 0

转载 static_cast dynamic_cast const_cast reinterpret_cast

1. c强制转换与c++强制转换 总结: static_cast:作用与c语言的指针转换相同(好像不能用于引用) dynamic_cast :父子类之间的转换(指针、引用) 且有安全检查 const_cast:去除const reinterpret_cast:指针与int的互转 ...

2018-12-18 22:51:24 62 0

转载 C++ 11 Lambda表达式

C++11的一大亮点就是引入了Lambda表达式。利用Lambda表达式,可以方便的定义和创建匿名函数。对于C++这门语言来说来说,“Lambda表达式”或“匿名函数”这些概念听起来好像很深奥,但很多高级语言在很早以前就已经提供了Lambda表达式的功能,如C#,Python等。今天,我们就来简单...

2018-12-17 11:21:50 72 0

转载 AVPacket详解

本文主要从以下几个方面对AVPacket做解析: AVPacket在FFmpeg中的作用 字段说明 AVPacket中的内存管理 AVPacket相关函数的说明 结合AVPacket队列说明下AVPacket在传递过程中数据缓存的管理 查了一些资料,发现FFmpeg的版本更新还是挺快,而且有很...

2018-12-09 15:13:54 3304 0

转载 YUV格式解析

YUV格式有两大类:planar和packed。对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。对于packed的YUV格式,每个像素点的Y,U,V是连续交*存储的。 &nbsp; YUV,分为三个分量,“Y”表示明亮度(Lumina...

2018-12-08 21:25:23 91 0

原创 gcc连接静态库成功 g++连接静态库报undefined reference to''

mac下用g++编译代码,在连接一个c的静态库的时候,总是提示: undefined reference to`错误,找不到库函数。 main.c:(.text+0x15): undefined reference to `MemoryContextInit()' main.c:(.te...

2018-12-05 20:49:53 1261 0

转载 五、导入表、IAT、绑定导入表解析

1、导入表(Import Descriptor)结构解析: 导入表是记录PE文件中用到的动态连接库的集合,一个dll库在导入表中占用一个元素信息的位置,这个元素描述了该导入dll的具体信息。如dl...

2018-07-21 14:44:30 412 0

转载 四、重定位表(Relocation Table)解析

1、重定位表的作用 重定位表(Relocation Table)用于在程序加载到内存中时,进行内存地址的修正。为什么要进行内存地址的修正?我们举个例子来说:test.exe可执行程序需要三个动态链...

2018-07-21 14:40:38 1840 0

转载 三、导出表(Export Table)解析

数据目录(Data Directory)有16个_IMAGE_DATA_DIRECTORY结构体元素,该结构体数组是可选PE头中最后一个成员。这十六个元素分别存储了不同信息,分别是:导入表、导出表、...

2018-07-21 14:35:58 960 0

转载 二、Section Table解析

1、Section Table结构解析: Section Table(节表)是记录PE文件中各个节的详细信息的集合,其每个成员是struct _IMAGE_SECTION_HEADER结构体,即节表是一个结构体数组来维护...

2018-07-21 14:30:56 549 0

转载 一、DOS头与PE头解析

在Windows下所谓PE文件即Portable Executable,意为可移植的可执行的文件。常见的.EXE、.DLL、.OCX、.SYS、.COM都是PE文件。PE文件有一个共同特点:前两个字...

2018-07-21 14:29:28 881 0

原创 Fragment源码分析

参考: http://blog.csdn.net/yuanzeyao/article/details/52822315 http://blog.csdn.net/yuanzeyao/article/details/52895029 https://www.jianshu.com/...

2018-03-08 22:46:25 95 0

原创 Android 网络框架之Retrofit2使用详解及从源码中解析原理

http://blog.csdn.net/guiman/article/details/51480497 http://www.jianshu.com/p/097947afddaf主要的类: Retrofit:总类 负责各模块的组装 ServiceMethod:将注解转为http请求参数 ...

2017-11-08 15:29:14 192 0

原创 JAVA动态代理

1、简单的demopublic interface HelloService { /** * 目标方法 */ public abstract void add(String str); }public class HelloServiceImpl impleme...

2017-11-03 18:29:01 178 0

原创 okhttp3 源码分析

总体流程 下面的流程图是由上面的文章抄来的(自己画的图,用的visio)整个流程是,通过OkHttpClient将构建的Request转换为Call,然后在RealCall中进行异步或同步任务,最后通过一些的拦截器interceptor发出网络请求和得到返回的response。将流程大概是这么个流...

2017-11-02 16:29:47 167 0

原创 整理的好的JNI资料

http://blog.csdn.net/qq_32583189/article/category/6521368

2017-10-31 10:30:03 138 0

原创 JNI so库加载流程之System.loadLibrary流程分析

下面的代码都来自于android7.1.1_r6源码,除了第一个代码片作为影子其他代码片的第一行都标注了代码片的来源。System.loadLibrary(libName);loadLibrary是System.java中的一个静态方法//libcore/ojluni/src/main/java/...

2017-10-30 22:33:01 1612 0

原创 JNI概述

设计概述JNI接口函数和指针平台相关代码是通过调用JNI函数来访问Java虚拟机功能的。JNI函数可通过接口指针来获得。接口指针是指针的指针,它指向 一个指针数组,而指针数组中的每个元素又指向一个接口函数。每个接口函数都处在数组的某个预定偏移量中。下图说明了接 口指针的组织结构。JNI接口的组...

2017-10-30 19:54:22 138 0

原创 敏捷武士:看敏捷高手交付卓越软件

一、敏捷开发的角色1、敏捷客户(产品经理) 决定需求、设置优先级、作出取舍、不断的通过用户反馈改进需求 2、敏捷程序员 将需求转化为软件、与其他团队评估、作出技术决策、迭代式的开发 3、敏捷测试 及时对软件进行测试,并反馈 4、敏捷项目经理 持续计划,扫除挡在团队成功路上的一切障碍 ...

2017-10-23 16:34:22 183 0

原创 garbage following instruction -- `dmb ish'

编译linux kernel 4.4,报garbage following instruction – `dmb ish’解决:编译器问题。更换编译器即可。 sudo apt-get install gcc-arm-linux-gnueabi编译内核时,修改编译器: ARCH ...

2017-10-13 00:58:15 3213 1

原创 Linux内核下载地址

http://www.kernel.org/pub/linux/kernel/

2017-10-12 20:59:00 5906 0

原创 17 tcp

1、TCP首部每个TCP段都包含源端和目的端的端口号,用于寻找发端和收端应用进程。这两个值加上IP首部中的源端IP地址和目的端IP地址唯一确定一个TCP连接序号 用来标识从TCP发端向TCP收端发送的数据字节流,它表示在这个报文段中的的第一个数据字节。如果将字节流看作在两个应用程序间的单向流动,则...

2017-10-12 20:58:32 267 0

原创 11 UDP:用户数据报协议

1、概述面向无连接的用户数据报协议,在传输数据前不需要先建立连接;目地主机的运输层收到UDP报文后,不需要给出任何确认特点: 相比TCP速度稍快些 简单的请求/应答应用程序可以使用UDP 对于海量数据传输不应该使用UDP 广播和多播应用必须使用UDP2、格式端口号表示发送进程和接收进程 ...

2017-10-11 15:38:59 254 0

原创 6 ICMP:Internet控制报文协议

1、特点ICMP经常被认为是IP层的一个组成部分。它传递差错报文以及其他需要注意的信息。ICMP报文通常被IP层或更高层协议(TCP或UDP)使用。2、数据格式 下面各种情况都不会导致产生ICMP差错报文: 1) ICMP差错报文(但是,ICMP查询报文可能会产生ICMP差错报文)。 2) ...

2017-10-10 18:37:28 229 0

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