刷新
掌握C#中异步魔法:同步方法如何优雅调用异步方法

博主头像 概述:上述C#示例演示了如何在同步方法中调用异步方法。通过使用`async`和`await`关键字,实现了同步方法对异步方法的调用。建议使用`await`而不是`Result`来避免潜在的死锁问题。这种模式在处理异步任务时能够提高代码的可读性和性能。 在C#中,从同步方法调用异步方法的过程涉及到使用 ...

记一次 .NET某半导体CIM系统 崩溃分析

博主头像 一:背景 1. 讲故事 前些天有一位朋友在公众号上找到我,说他们的WinForm程序部署在20多台机器上,只有两台机器上的程序会出现崩溃的情况,自己找了好久也没分析出来,让我帮忙看下怎么回事,就喜欢这些有点调试基础的,dump也不需要我指导怎么去抓,接下来我们就上windbg开始分析吧。 二:Win ...

在 .NET 中使用 OPC UA 协议

目录什么是 OPC UAUaExpert 的使用下载 UaExpert首次启动添加 OPC UA 服务器连接 OPC UA 服务器查看 PLC 数据使用 C# 读写 OPC UA 数据连接到 OPC UA 服务器获取节点的值写入节点的值 什么是 OPC UA OPC UA(OPC Unified A ...

一个操作让数组处理速度快了5倍,到底是为什么

博主头像 概述:通过对数组进行排序,代码更好地利用了缓存,从而提高了程序的性能。这种现象通常被称为"缓存友好"(cache-friendly)或"空间局部性"(spatial locality) 今天做一个数组数据计算时,发现一个效率问题,给大家分享一下 一个数组排序和不排序时同样的逻辑处理速度是不一样的。排 ...

C# 数据流 FileStream

博主头像 // Stream MS HelpManual: https://learn.microsoft.com/zh-cn/dotnet/api/system.io.stream?view=net-8.0 // FileStream 官方手册: https://learn.microsoft.com/zh ...

WinAppSDK / WinUI3 项目无法使用 SystemEvents 的问题

博主头像 SystemEvents 是一个开发 win32 窗口项目很常用的类,其中封装了一些常用的系统广播消息。在 WinUI3 项目中,SystemEvents 事件经常无法触发,简单排查了一下原因。 SystemEvent 内封装了一个线程和一个窗口,通过窗口消息在内部线程上调用事件,内部使用了 Sys ...

记一次 .NET某游戏后端API服务 CPU爆高分析

博主头像 一:背景 1. 讲故事 前几天有位朋友找到我,说他们的API服务程序跑着跑着CPU满了降不下去,让我帮忙看下怎么回事,现在貌似民间只有我一个人专注dump分析,还是申明一下我dump分析是免费的,如果想学习.NET高级调试的分析技术,可以来我的训练营看看,话不多说,dump分析走起! 二:WinDb ...

重新记录一下ArcGisEngine安装的过程

博主头像 前言 好久不用Arcgis,突然发现想用时,有点不会安装了,所以这里记录一下安装过程。 下载Arcgis 首先,下载一个arcgis版本,我这里下的是10.1。 推荐【 gis思维(公众号)】,【麻辣GIS(网站)】。 当然了,这都是很旧很旧的版本了,基本上没有三维功能。 一定要下载带注册机的。 a ...

C#整数除法探析:性能提升与精度平衡的设计之道

博主头像 概述:C#中整数除法返回整数,维护与低级语言兼容性,提高性能。虽然精度有损,但可通过显式浮点数转换实现小数保留。 在C#中,整数除法返回整数而不是浮点数,这是为了保持与低级语言(如C和C++)的兼容性,同时提高性能和降低复杂性。这种设计使得整数之间的除法操作更加高效,但可能导致精度丧失。 基础功能: ...

搞懂.NET应用程序管理员权限:三种简单方法一网打尽

博主头像 概述:.NET应用程序以管理员身份运行的方法包括修改清单文件、项目文件,或在运行时动态请求管理员权限。清单文件和项目文件通过声明UAC请求,而动态请求管理员权限则在程序启动时检查并重新启动。选择适当的方法取决于项目需求和配置。 在.NET应用程序中强制以管理员身份运行,可以通过清单文件、项目文件或者 ...

内网穿透,远程网盘,网站外挂资源,可嵌入到页面的网盘资源解决方案

博主头像 这是一个我个人写的库,主要实现的是基于tcpclient的网站外扩网盘的解决方案,可以使用家用网络外挂个人电脑中的资源到自己的网站上,已经上传nuget,大家可以直接在nuget包管理中搜索到,直接搜索ZmjNetDisk即可,下面介绍具体的使用方式: 另外一提这个库做的比较的个人化,因为他就是为了 ...

轻量级.net standard微信支付登录Nuget开源库

博主头像 我个人编写的库,在我个人网站,小程序等很多地方都在使用中,大家可以搜索小程序 什邡市宅猫君网络工作室 或者到我的网站 store.zhaimaojun.cn 去体验支付和登录效果。 本库主要实现了native pay(二维码支付)jsapi pay(小程序直接调起支付),需要注意的是这是基于api3 ...

超轻量级的c#版基于文件的日志记录工具,可定制输出格式,可指定日志文件

博主头像 这是我自己个人编写的日志记录,主要使用在只需要记录日志,偶尔到文件中查看一下日志记录的情况。我自己写的一些服务之类的是使用了这个的,代码很少,使用很简单。 第一步 搜索和安装我的Nuget包 搜索和安装zmjtool这个包,我写的,如下图: 第二步 引入namespace和创建logger对象 1 ...

<1234···28>