阅读源码是每个优秀开发工程师的必经之路,那么这篇文章就来讲解下为什么要阅读源码以及如何阅读源码。首先来说下为什么要读源码,有学习源码的必要吗?为什么要阅读源码?关于为什么阅读和学习源码,我个人认为可能有以下几点:(一)吊打面试官,应对面试为了找到更好的工作,应对面试,因为在面试中肯定会问到源码级别的问题,比如:为什么HashMap是线程不安全的?如果你没有阅读过源码,面试官可能会对回答的结果不满意
分类:
其他好文 时间:
2020-08-26 18:41:37
阅读次数:
43
记录一下自己犯的错误,回调函数本身就会提供数据大小,自己算反而出了问题。 size_t Get_Receive_Data(void* buffer, size_t size, size_t nmemb, char **stream) { //int len = strlen((char*)buffe ...
分类:
Web程序 时间:
2020-08-19 19:38:03
阅读次数:
110
##13.1原理: 深度纹理,存储的不是颜色值,而是一个高精度的深度值[0,1] - 归一化的设备坐标(Normalized Device Coordinates,NDC) 精度(24or16位) 1)使用延迟渲染时,G-buffer中直接可得。2)否则通过单独的pass,unity使用Shader ...
分类:
其他好文 时间:
2020-08-18 14:01:47
阅读次数:
67
1.服务器层优化1.将数据保存在内存中,保证内存读取数据设置足够大的innodb_buffer_pool_size,将数据读取到内存中。建议innodb_buffer_poll_size设置为总内存大小的3/4或者4/5怎么确定innodb_buffer_pool_size足够大。数据是从内存读取而不是硬盘?innodb_buffer_pool_pages_free为0则表示bufferpool已
分类:
数据库 时间:
2020-08-18 13:37:49
阅读次数:
66
1.1 基础知识 首先我们知道进程是无法直接操作I/O设备的,其必须通过系统调用请求内核来协助完成I/O动作,而内核会为每个I/O设备维护一个buffer。 这里数据的两次拷贝都需要时间,而这两端时间中进程和内核的状态不一样就产生了下面五种i/o模型: 阻塞I/O 对于内核而言,网络中的数据并不一定 ...
分类:
编程语言 时间:
2020-08-18 13:31:22
阅读次数:
54
线上三张图吧: 一、innodb系统架构图 ...
分类:
数据库 时间:
2020-08-17 16:54:00
阅读次数:
64
#include <stdio.h> #include <SDL.h> // 每次读取2帧数据, 以1024个采样点一帧 2通道 16bit采样点为例 #define PCM_BUFFER_SIZE (1024*2*2*2) // 音频PCM数据缓存 static Uint8 *s_audio_bu ...
分类:
其他好文 时间:
2020-08-15 22:37:43
阅读次数:
68
这里只写后端的代码,基本的思想就是,前端将文件分片,然后每次访问上传接口的时候,向后端传入参数:当前为第几块文件,和分片总数 下面直接贴代码吧,一些难懂的我大部分都加上注释了: 上传文件实体类: 看得出来,实体类中已经有很多我们需要的功能了,还有实用的属性。如MD5秒传的信息。 首先是文件数据接收逻 ...
分类:
编程语言 时间:
2020-08-07 18:04:03
阅读次数:
67
这是程序员cxuan的第19篇原创分享1碎碎念这是一道老生常谈的问题了,字符串是不仅是Java中非常重要的一个对象,它在其他语言中也存在。比如C++、VisualBasic、C#等。字符串使用String来表示,字符串一旦被创建出来就不会被修改,当你想修改StringBuffer或者是StringBuilder,出于效率的考量,虽然String可以通过+来创建多个对象达到字符串拼接的效果,但是这种
分类:
其他好文 时间:
2020-08-07 09:55:03
阅读次数:
59
private void UpgradeFont(object o) { if (CheckUpdate()) { dt = DateTime.Now; if (string.IsNullOrEmpty(FilePath) || !File.Exists(FilePath)) { ShowTip(" ...
分类:
其他好文 时间:
2020-08-01 21:21:41
阅读次数:
77