C# 多线程学习笔记 - 2

本文主要针对 GKarch 相关文章留作笔记,仅在原文基础上记录了自己的理解与摘抄部分片段。 遵循原作者的 CC 3.0 协议。 如果想要了解更加详细的文章信息内容,请访问下列地址进行学习。 原文章地址:https://blog.gkarch.com/threading/part2.html 一、同步概要 同步构造基本分为四种,简单的阻塞方法、锁构造、信号构造、非阻塞同步构造。 ...

C# 多线程学习笔记 - 1

CSharp 多线程学习笔记 基础知识 静态字段是在所有线程当中共享状态的。 一个线程被阻塞时,不会消耗 CPU 资源。 Join 可以等待另一个线程结束,Sleep 可以将线程阻塞指定的时间,两者使用时线程都是阻塞状态。 Join 可以设置超时时间,当线程执行超过指定时间返回 False。 Thread.Sleep(0) 会释放当前时间片,将 CPU 资源让出给其他线程。 Thread.Sleep( ...

C# 结合 using 语句块的三种实用方法

一、简介 阅读 Abp 源码的过程中,自己也学习到了一些之前没有接触过的知识。在这里,我在这儿针对研究学习 Abp 框架中,遇到的一些值得分享的知识写几篇文章。如果有什么疑问或者问题,欢迎大家评论指正。 在本篇主要是 Scoped 范围与 using 语句块的使用。using 语句块大家一定都不陌生,都是与非托管对象一起存在的,它有一个特性就是在 using 语句块结束的时候会调用对象的 IDispose.Dispose( ...

Abp + MongoDb 改造默认的审计日志存储位置

一、背景 在实际项目的开发当中,使用 Abp Zero 自带的审计日志功能写入效率比较低。其次审计日志数据量中后期十分庞大,不适合与业务数据存放在一起。所以我们可以重新实现 Abp 的 IAuditingStore 接口,来让我们的审计日志数据存储在 MongoDb 当中。 二、实现 2.0 引入相关包 这里我们需要在模块项目引入 Abp 与 mongocsharpdriver ...