上一页 1 ··· 41 42 43 44 45 46 47 48 49 ··· 322 下一页
摘要: 在 dotnet 里面,使用 await 进行异步逻辑,默认是会尝试切换回调用 await 的线程同步上下文。这个机制对于大多数的上层应用来说都是符合逻辑且方便的逻辑,例如对于带 UI 线程的 WPF 或 WinForms 等应用,基础开发的执行逻辑基本都是在 UI 线程上,此时进入一次 await 再出来,期望如果是进入 await 之前是在 UI 线程,那么执行 await 完成之后,退出的代码也能在 UI 线程执行,正好这就是 dotnet 的默认行为。但是对于库开发者来说,情况就反过来的,库的开发者大部分时候更期望默认不要切换回调用方的线程,采用 Fody 的 ConfigureAwait.Fody 库,可以控制此默认的行为。本文将告诉大家如何使用 ConfigureAwait.Fody 库 阅读全文
posted @ 2022-09-21 08:40 lindexi 阅读(470) 评论(3) 推荐(1)
摘要: 对于大型的应用软件,特别是客户端应用软件,应用启动过程中,需要执行大量的逻辑,包括各个模块的初始化和注册等等逻辑。大型应用软件的启动过程都是非常复杂的,而客户端应用软件是对应用的启动性能有所要求的,不同于服务端的应用软件。设想,用户双击了桌面图标,然而等待几分钟,应用才启动完毕,那用户下一步会不会就是点击卸载了。为了权衡大型应用软件在启动过程,既需要执行复杂的启动逻辑,又需要关注启动性能,为此过程造一个框架是一个完全合理的事情。我所在的团队为启动过程造的库,就是本文将要和大家介绍我所在团队开源的 dotnetCampus.ApplicationStartupManager 启动流程框架的库 阅读全文
posted @ 2022-09-21 08:37 lindexi 阅读(1130) 评论(3) 推荐(14)
摘要: 在某些业务逻辑下,需要同时等待多个任务执行完成,才能继续往下执行后续逻辑。等待任务执行的逻辑,大部分情况下需要使用到 Task.WhenAll 方法,代码行数不少。另外,在需要获取多个异步任务的返回值的逻辑上,整体的逻辑代码量看起来也不少。本文将和大家介绍 TaskTupleAwaiter 库,通过 TaskTupleAwaiter 库可以方便等待多个任务执行完成,且方便获取各个异步任务的返回值 阅读全文
posted @ 2022-09-20 19:59 lindexi 阅读(134) 评论(0) 推荐(0)
摘要: 本文告诉大家如何使用 Newtonsoft.Json 输出枚举首字符小写 阅读全文
posted @ 2022-09-20 19:58 lindexi 阅读(216) 评论(0) 推荐(0)
摘要: 随着源代码生成的越来越多的应用,自然也遇到了越来越多开发上的坑,例如源代码的缩进是一个绕不过去的问题。如果源代码生成是人类可见的代码,我期望生成的代码最好是比较符合人类编写代码的规范。为了能让人类在阅读机器生成的代码的时候,不会想着拿刀砍那个编写代码生成代码的开发者,最好,或者说至少代码也应该有个缩进和换行吧。本文将安利大家通过 IndentedTextWriter 这个辅助类,用来辅助生成带缩进的内容 阅读全文
posted @ 2022-09-20 19:57 lindexi 阅读(81) 评论(0) 推荐(0)
摘要: 本文告诉大家如何使用 OpenXML 解析 PPT 的图表,以面积图为入门例子告诉大家 OpenXML 的存储 阅读全文
posted @ 2022-09-20 19:57 lindexi 阅读(304) 评论(0) 推荐(0)
摘要: 在 OpenXML 里的图表存放的日期时间很多存放的是数值,需要进行转换才能获取到用户可见的字符串 阅读全文
posted @ 2022-09-20 19:56 lindexi 阅读(176) 评论(0) 推荐(0)
摘要: 我的应用是独立发布的,在用户的设备上不需要额外去安装 .NET 运行时。但是我的应用有一个需求是下载另一个应用作为插件,由本应用调起插件进程。本文告诉大家如何解决调用插件的进程时,赋值给插件进程运行时的文件夹路径,解决环境依赖 阅读全文
posted @ 2022-09-20 19:54 lindexi 阅读(133) 评论(0) 推荐(0)
摘要: 本文告诉大家如何在 dotnet 6 下使用 HttpClient 更加精细的控制网络请求的超时,实现 HttpWebRequest 的 ReadWriteTimeout 功能 阅读全文
posted @ 2022-09-20 19:54 lindexi 阅读(867) 评论(0) 推荐(2)
摘要: 本文将来和大家推荐一个基于最友好 MIT 协议的完全在 GitHub 上开源的,可代替 .NET Remoting 的 IPC 本机多进程通讯库 阅读全文
posted @ 2022-09-20 19:53 lindexi 阅读(1337) 评论(2) 推荐(2)
上一页 1 ··· 41 42 43 44 45 46 47 48 49 ··· 322 下一页