上一页 1 2 3 4 5 6 7 ··· 22 下一页
摘要: 前言 最近遇到很有意思转换二进制的问题,有部分童鞋俨然已了解,可能也有一部分童鞋没碰到过也就不知情,这里我们来深入学习下转换二进制所带来的问题。 二进制转换问题 假设现在我们有一个int类型的数据,它的范围区间暂且定在0-15之间,我们需要将其转换为二进制,然后获取二进制中的每一位,若不足4位则0填 阅读全文
posted @ 2020-07-02 07:15 Jeffcky 阅读(787) 评论(4) 推荐(5) 编辑
摘要: 前言 本文来源于一位公众号童鞋私信我的问题,在我若加思索后给出了其中一种方案,在此之前我也思考过这个问题,借此机会我稍微看了下,目前能够想到的也只是本文所述方案。 为何要忽略主外键关系 我们不仅疑惑为何要忽略主外键关系呢?不难想到,相对于大型企业而言大部分都会采用不建立主外键关系(简称,外键约束), 阅读全文
posted @ 2020-06-30 19:23 Jeffcky 阅读(1357) 评论(0) 推荐(2) 编辑
摘要: 前言 在一个拥有32位的地址空间,4KB的页面(212),并且每个PTE为4个字节,那么页表大小为4MB(4 * 232 / 212),但若为64位地址空间,4KB的页面(212)且每个PTE为4字节,那么页表大小为16TB(4 * 264 / 212),由于页表常驻内存,占用内存会很大,所以必须对 阅读全文
posted @ 2020-06-29 08:09 Jeffcky 阅读(3447) 评论(0) 推荐(1) 编辑
摘要: 前言 有些时候我们会发现方法名称都正确匹配,但就是找不到对应请求接口,所以本文我们来深入了解下何时会出现接口请求404的情况。 匹配控制器Action方法(404) 首先我们创建一个web api应用程序,我们给出如下示例控制器代码 [ApiController] [Route("[controll 阅读全文
posted @ 2020-06-24 20:22 Jeffcky 阅读(1466) 评论(2) 推荐(4) 编辑
摘要: 前言 四月中旬Hangfire团队发布了1.7.11版本,在使用周期性作业调度过程中发现一个问题,这个问题应该一直未解决,故做此记录,希望遇到的童鞋根据项目业务而避开这个问题。 周期性作业调度 我们依然是在控制台中进行测试,下载所需包请参考官方文档,这里不再叙述,首先我们在内存中存储数据,如下: v 阅读全文
posted @ 2020-06-21 10:55 Jeffcky 阅读(1806) 评论(1) 推荐(4) 编辑
摘要: 前言 最近在做项目过程中使用到了如题并行方法,当时还是有点犹豫不决,因为平常使用不多, 于是借助周末时间稍微深入了下,发现我用错了,故此做一详细记录,希望对也不是很了解的童鞋在看到此文后不要再犯和我同样的错误。 并行遍历异步表象 这里我们就不再讲解该语法的作用以及和正常遍历处理的区别,网上文章比比皆 阅读全文
posted @ 2020-06-20 08:36 Jeffcky 阅读(2430) 评论(4) 推荐(5) 编辑
摘要: 前言 前面我们讲到通过TLB缓存页表加快地址翻译,通过上一节缓存原理的讲解为本节做铺垫引入TLB和缓存的关系,同时我们来完整梳理下从CPU产生虚拟地址最终映射为物理地址获取数据的整个过程是怎样的,若有错误之处,还请批评指正。 TLB和缓存串行访问(Serial TLB & Cache Access) 阅读全文
posted @ 2020-06-14 18:42 Jeffcky 阅读(3455) 评论(2) 推荐(3) 编辑
摘要: 前言 本节内容计划是讲解TLB与高速缓存的关系,但是在涉及高速缓的前提是我们必须要了解操作系统缓存原理,所以提前先详细了解下缓存原理,我们依然是采取循序渐进的方式来解答缓存原理,若有叙述不当之处,还请批评指正。 缓存原理 高速缓存被划分为多个块,其大小可能不同,缓存中的块数通常为2的幂。如下为一个具 阅读全文
posted @ 2020-06-07 20:41 Jeffcky 阅读(4299) 评论(0) 推荐(7) 编辑
摘要: 前言 上一节我们整体概括通过MMU将虚拟地址翻译为物理地址的转换,这个过程都是按序就班的进行,一切都是基于已提前创建、分配虚拟页、物理页以及命中的前提,只是给和我一样没怎么系统学习操作系统的童鞋首先在脑海里有个大概的印象,本节我们从源头开始分析为程序创建进程到映射到主存上整个详细过程,本文将通过大量 阅读全文
posted @ 2020-06-02 08:28 Jeffcky 阅读(2192) 评论(0) 推荐(0) 编辑
摘要: 前言 由于个人对虚拟内存这块特别感兴趣,所以就直接暂且跳过其他,接下来将通过几篇文章进行详细讲解,当然其他基础内容后续在我进行相应整体学习后也会同步输出文章,比如操作系统概念、程序链接、进程管理、页面置换算法、流水线、浮点指令、内存管理、磁盘管理等内容。不管周遭的环境如何,毕竟还很菜,坚持每天让自己 阅读全文
posted @ 2020-05-29 08:02 Jeffcky 阅读(3065) 评论(4) 推荐(4) 编辑
摘要: 前言 上一节内容我们对在32位操作系统下堆栈帧进行了详细的分析,本节我们继续来看看在64位操作系统下对于过程调用在处理机制上是否会有所不同呢? 堆栈帧 我们给出如下示例代码方便对照汇编代码看,和上一节有所不同的是函数调用多了几个参数。 #include <stdio.h> int main() { 阅读全文
posted @ 2020-05-19 22:55 Jeffcky 阅读(2937) 评论(4) 推荐(2) 编辑
摘要: 前言 为进行基础回炉,接下来一段时间我将持续更新汇编和操作系统相关知识,希望通过屏蔽底层细节能让大家明白每节所阐述内容。当我们写下如下C代码时背后究竟发生了什么呢? #include <stdio.h> int main() { int a = 2, b = 3; int func(int a, i 阅读全文
posted @ 2020-05-18 07:55 Jeffcky 阅读(1921) 评论(3) 推荐(3) 编辑
摘要: 前言 关于C#中默认的Distinct方法在什么情况下才能去重,这个就不用我再多讲,针对集合对象去重默认实现将不再满足,于是乎我们需要自定义实现来解决这个问题,接下来我们详细讲解几种常见去重方案,孰好孰歹自行判之。 分组 首先给出我们需要用到的对象,如下: public class Person { 阅读全文
posted @ 2020-05-10 16:49 Jeffcky 阅读(2111) 评论(5) 推荐(3) 编辑
摘要: 前言 关于线程池原理分析请参看《http://objcoding.com/2019/04/25/threadpool-running/》,建议对原理不太了解的童鞋先看下此文然后再来看本文,这里通过对原理的学习我谈谈对线程池的理解,若有错误之处,还望批评指正。 线程池思考 线程池我们可认为是准备好执行 阅读全文
posted @ 2020-04-17 23:47 Jeffcky 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 前言 本节是实现统计排名的一点技巧,可能有一部分童鞋在实现排名统计绕了一大圈,最后还不如两行代码就搞定,代码清晰而可读性强,接下来我们来一起来看看。 统计排名 我们知道在SQL Server中可以利用Row_Number、Rank等函数进行排名,在MySQL中可以利用变量方式来实现排名,对于计算操作 阅读全文
posted @ 2020-04-17 21:22 Jeffcky 阅读(939) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 22 下一页