- 博客(15)
- 资源 (1)
- 收藏
- 关注
原创 深入理解 C# 中的异步和等待(async/await)
async/await 提供了一种高效、简洁的异步编程方式。它不会阻塞线程,而是通过底层的状态机和回调机制来挂起方法,并释放当前线程回线程池,直到异步任务完成后再恢复执行。这种设计能够提高应用程序的性能,尤其是在需要进行大量 I/O 操作时。通过理解 async/await 背后的机制,你可以更好地利用它来编写高效的异步代码,而无需担心线程阻塞和线程池的管理。希望本文能帮助你更深入地理解 C# 中的异步编程!
2025-04-17 15:42:36
1166
原创 .NET 高性能集合对比:List<T>、HashSet<T>、ConcurrentBag<T> 深度解析
应用场景推荐集合类型理由说明百万级数据查重、去重插入和查找 O(1),高性能去重顺序导出、大批量遍历显示List< T>保留顺序,适合分页、排序等 UI 操作多线程收集日志或临时数据多线程安全,不加锁也能并发添加高频查找某元素是否存在Contains 快,比 List 快得多插入数据后仍需顺序处理List< T>(或 List + Distinct)插入后按顺序处理更方便;必要时配合去重。
2025-04-09 09:55:02
301
原创 在 Frappe Gantt 中添加年份显示
Frappe Gantt 是一款轻量级的甘特图工具,常用于项目管理和进度展示。默认情况下,当我们设置时,Frappe Gantt 的时间轴只显示月份和日期,而不显示年份。本文将介绍如何在 Frappe Gantt 渲染的 DOM 中添加一个年份行,以便更直观地显示年份信息。由于 Frappe Gantt 1.0.3 版本中没有提供on_render延时调用(setTimeout):在初始化 Gantt 后使用setTimeout延时调用添加年份函数。本文示例中采用延时调用的方式来简化实现。
2025-03-14 11:32:06
752
原创 JSON.parse(JSON.stringify()) 无法复制方法?深拷贝解决方案大全
如果你的对象没有嵌套结构,并且希望保留方法,可以使用 Object.assign()在 JavaScript 开发中,我们经常需要对对象进行深拷贝,而。本文将详细分析这个问题,并提供多种解决方案。:只会拷贝第一层,嵌套对象不会被深拷贝。:需要深拷贝普通数据对象,但不关心方法。进行深拷贝,但仍然不会复制方法。:深拷贝复杂对象,但不关心方法。:可以保留方法,适用于复杂对象。如果有问题,欢迎留言交流!希望这篇文章能帮你更好地理解。:稍微复杂,需要手写代码。只能序列化 JSON。
2025-03-12 15:16:51
509
原创 Vue使用 Frappe Gantt 的 `data` 和 `options` 参数详解 + 使用实例
Frappe Gantt 是一个轻量级的 JavaScript 甘特图库,支持 Vue、React 和原生 JavaScript,适用于项目管理、任务调度等场景。,并提供了完整的 Vue 示例代码。如果你有任何问题,欢迎留言讨论!本文介绍了 Frappe Gantt 的。(配置选项)参数,并提供完整示例代码。
2025-03-10 16:37:21
678
1
原创 C# Expression常用部分使用
在 C# 中,Expression 类是用于表示代码片段(如 Lambda 表达式或函数调用)的一种数据结构。它属于 System.Linq.Expressions 命名空间,提供了一个可以被编译和执行的树形结构,允许动态生成代码并在运行时进行操作。Expression 类和相关的 Expression、LambdaExpression、BinaryExpression 等类提供了强大的功能,可以实现编译时不能直接表达的功能,例如:动态查询:比如在 LINQ 中动态构造查询条件。
2025-01-08 16:34:01
1068
1
原创 vue传递回调函数时显式地绑定 this
箭头函数不会创建自己的 this,会继承外部作用域的 this,因此可以在 onchange 方法中这样处理。可以在传递回调函数时显式地绑定 this,这样 onChange 就能接收到正确的上下文。
2024-11-30 14:34:47
252
2
原创 .Net6+ EF Code Frist 配置批量迁移
1.创建DemoDbContext注入Dbcontext,这是将 AddDbContext 的上下文配置传递到 DbContext 的方式。4.DemoDbContext类重写OnModelCreating方法。7.最后使用Update-database将表更新到数据库中。6.使用迁移命令Add-migration看看是否配置成功。5.添加数据库配置DemoDbContext。3.将所有实体类继承EntityBase类。2.创建抽象类EntityBase。2.引用nuget包。
2024-04-21 23:12:39
457
1
原创 CentOS Linux 8部署项目.Net6
回到MobaXterm,切换到目录下并解压文件,并删除压缩文件。10.使用postman验证项目,能返回数据说明部署成功。
2024-03-05 11:42:54
1096
1
原创 mysql远程链接执行sql备份文件
打开cmd,切换到mysql服务目录下链接远程服务器并登录 Mysql -h 远程地址 -u 用户名 -p,然后输入密码,出现欢迎表示链接成功切换需要执行的数据库 use 数据库名称执行文件 . 文件路径,需要用反斜杠,回车即可执行文件
2024-02-29 15:16:01
524
1
原创 angular环境搭建
npm install -g @angular/cli --force 安装环境。npm cache clear --force 清除node.js的缓存。npm uninstall -g @angular/cli 卸载。npm i --force 安装node.js。ng build --prod 打包压缩。angular环境搭建。ng s -o 运行。
2023-08-31 10:47:15
159
mvc3资源包需要的自行下载
2018-12-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人