随笔分类 -  .NET

摘要:# 什么是 long-running thread long-running task 是指那些长时间运行的任务,比如在一个 while True 中执行耗时较长的同步处理。 下面的例子中,我们不断从队列中尝试取出数据,并对这些数据进行处理,这样的任务就适合交给一个 long-running tas 阅读全文
posted @ 2023-06-22 00:27 黑洞视界 阅读(1928) 评论(3) 推荐(13) 编辑
摘要:LRU缓存替换策略 缓存是一种非常常见的设计,通过将数据缓存到访问速度更快的存储设备中,来提高数据的访问速度,如内存、CPU缓存、硬盘缓存等。 但与缓存的高速相对的是,缓存的成本较高,因此容量往往是有限的,当缓存满了之后,就需要一种策略来决定将哪些数据移除出缓存,以腾出空间来存储新的数据。 这样的策 阅读全文
posted @ 2023-04-05 17:56 黑洞视界 阅读(3091) 评论(10) 推荐(16) 编辑
摘要:目录前言从叶子节点删除数据从非叶子节点删除数据提前扩充只有 t-1 的 Item 的节点:维持 B树 平衡的核心算法从左兄弟节点借用 Item从右兄弟节点借用 Item与左兄弟节点或者右兄弟节点合并最值的删除代码实现Benchmarks:与 优先队列 PriorityQueue 的比较入队性能出队性 阅读全文
posted @ 2023-02-04 20:33 黑洞视界 阅读(577) 评论(0) 推荐(5) 编辑
摘要:目录前言查询数据算法说明代码实现查询最值算法说明代码实现B树的遍历算法说明代码实现Benchmarks总结参考资料 前言 本文为系列文章 B树的定义及数据的插入 数据的读取及遍历 数据的删除 前一篇文章为大家介绍了 B树 的基本概念及其插入算法。本文将基于前一篇的内容,为大家介绍插入到 B树 中的数 阅读全文
posted @ 2022-12-18 21:05 黑洞视界 阅读(570) 评论(0) 推荐(7) 编辑
摘要:前言 本文将以 C# 语言来实现一个简单的布隆过滤器,为简化说明,设计得很简单,仅供学习使用。 感谢@时总百忙之中的指导。 布隆过滤器简介 布隆过滤器(Bloom filter)是一种特殊的 Hash Table,能够以较小的存储空间较快地判断出数据是否存在。常用于允许一定误判率的数据过滤及防止缓存 阅读全文
posted @ 2022-06-26 22:29 黑洞视界 阅读(4651) 评论(16) 推荐(42) 编辑
摘要:目录前言Task.ContinueWithContinueWith 的产物:ContinuationTask额外的参数回调的容器:TaskContinuationTask.ContinueWith 回调的生命周期阶段一 将回调封装进 ContinueWithTaskContinuation阶段二 回 阅读全文
posted @ 2022-02-19 13:31 黑洞视界 阅读(11766) 评论(15) 推荐(44) 编辑
摘要:目录前言从表象讲起Task 从何而来Task 常见用法Task 的分类按是否包含 Result 分,也就是是否是泛型 Task按得到 Task 的方式,可以分为对 Task 进行分解Task 在哪执行?线程池一个独立的后台线程中自定义的TaskScheduler里Task 可以封装任何类型的别的任务 阅读全文
posted @ 2022-01-19 22:57 黑洞视界 阅读(11523) 评论(20) 推荐(56) 编辑

点击右上角即可分享
微信分享提示
主题色彩