摘要:一:背景 相信很多人都知道通过 任务管理器 抓取dump,虽然简单粗暴,但无法满足程序的无数种死法,比如: 内存膨胀,程序爆炸 CPU爆高,程序累死 应用无响应,用户气死 意外退出,和人生一样 既然手工太弱鸡,那有什么好的工具呢? 除了 adplus,本文推荐一款神器 procdump, 下载地址: 阅读全文
posted @ 2021-04-15 09:32 一线码农 阅读(321) 评论(13) 推荐(5) 编辑
摘要:一:背景 1. 讲故事 前天wx上有个朋友丢给我一个dump,让我帮忙鉴定一下某些敏感信息在内存中是否也是加密的,现在数据安全很重要,不仅数据库中的信息要加密,灌到内存后数据同样也需密文存储,随用随解密,争取安全最大化😄,此为背景,接下来就是我艹,这咋让我鉴定呀?😂😂😂 二:如何鉴定 1. 阅读全文
posted @ 2021-04-13 09:34 一线码农 阅读(500) 评论(4) 推荐(3) 编辑
摘要:一:背景 相信有很多朋友在遇到应用程序各种奇葩问题后,拿下来一个dump文件,辛辛苦苦分析了大半天,终于在某一个线程的调用栈上找到了一个可疑的方法,但 windbg 常常是以 汇编 的方式显示方法代码的,可惜的是,现如今的汇编,有多少像我们这些速成系码农还看的懂呢? 😂😂😂 接下来尖锐的问题就 阅读全文
posted @ 2021-04-12 07:17 一线码农 阅读(1420) 评论(16) 推荐(18) 编辑
摘要:一:背景 1. 前言 大概有2个月没写博客了,不是不想写哈😬,关注公号的朋友应该知道我这两个月一直都在翻译文章,前前后后大概100篇左右吧,前几天看公号的 常读用户 降了好几十,心疼哈,还得回过神来继续写! 2. 讲故事 上周给 武汉同济 做项目升级,本以为一切顺利,结果捅娄子了,第二天上午高峰期 阅读全文
posted @ 2021-02-08 11:53 一线码农 阅读(3593) 评论(17) 推荐(38) 编辑
摘要:一:背景 1. 讲故事 这段时间项目延期,加班比较厉害,博客就稍微停了停,不过还是得持续的技术输出呀! 园子里最近挺热闹的,精致码农大佬分享了三篇文章: 为什么要小心使用 Task.Run [https://www.cnblogs.com/willick/p/14078259.html] 小心使用 阅读全文
posted @ 2020-12-09 10:13 一线码农 阅读(3710) 评论(30) 推荐(37) 编辑
摘要:一:背景 1. 讲故事 昨天群里有位朋友问:linq 查询的结果会开辟新的内存吗?如果开了,那是对原序列集里面元素的深拷贝还是仅仅拷贝其引用? 其实这个问题我觉得问的挺好,很多初学 C# 的朋友或多或少都有这样的疑问,甚至有 3,4 年工作经验的朋友可能都不是很清楚,这就导致在写代码的时候总是会畏手 阅读全文
posted @ 2020-12-01 17:51 一线码农 阅读(1043) 评论(8) 推荐(8) 编辑
摘要:一:背景 1. 讲故事 前几天公号里有一位朋友留言说,你windbg玩的溜,能帮我分析下被 ThreadStatic 修饰的变量到底存放在哪里吗?能不能帮我挖出来😂😂😂,其实这个问题问的挺深的,玩高级语言的朋友相信很少有接触到这个的,虽然很多朋友都知道这个特性怎么用,当然我也没特别研究这个,既 阅读全文
posted @ 2020-11-24 09:28 一线码农 阅读(1036) 评论(4) 推荐(14) 编辑
摘要:一:背景 1. 讲故事 这几天都在修复bug真的太忙了,期间也遇到了一个挺有趣bug,和大家分享一下,这是一块sql挺复杂的报表相关业务,不知道哪一位大佬在错综复杂的 嵌套 + 平行 if判断中sql拼接在某些UI组合下出问题了,最终的 sql 架构类似这样的。 var sql = "select 阅读全文
posted @ 2020-11-21 14:07 一线码农 阅读(1676) 评论(7) 推荐(3) 编辑
摘要:一:背景 1. 讲故事 周五下午运营反馈了一个紧急bug,说客户那边一个信息列表打不开,急需解决,附带的日志文件也发过来了,看了下日志大概是这样的: 日期:2020-11-13 12:25:45,923 线程ID:[3924] 日志级别:INFO 错误类:xxx property:[(null)] 阅读全文
posted @ 2020-11-17 12:26 一线码农 阅读(4174) 评论(32) 推荐(41) 编辑
摘要:一:背景 1. 讲故事 这两天工作上太忙没有及时持续的文章产出,和大家说声抱歉,前几天群里一个朋友在问什么时候可以产出 Span 的下一篇,哈哈,这就来啦!读过上一篇的朋友应该都知道 Span 统一了 .NET 程序 栈 + 托管 + 非托管 实现了三大块内存的统一访问,🐂👃,而且在 .net 阅读全文
posted @ 2020-11-14 19:56 一线码农 阅读(2055) 评论(12) 推荐(14) 编辑
摘要:一:背景 1. 讲故事 前几天在项目中用 MemoryStream 的时候意外发现 ReadAsync 方法多了一个返回 ValueTask 的重载,真是日了狗了,一个 Task 已经够学了,又来一个 ValueTask,晕,方法签名如下: public class MemoryStream : S 阅读全文
posted @ 2020-11-10 12:03 一线码农 阅读(1580) 评论(11) 推荐(11) 编辑
摘要:一:背景 1. 讲故事 最近在翻 netcore 源码看,发现框架中有不少的代码都被 ref 给修饰了,我去,这还是我认识的 ref 吗?就拿 Span 来说,代码如下: public readonly ref struct Span<T> { public ref T GetPinnableRef 阅读全文
posted @ 2020-11-07 09:21 一线码农 阅读(4207) 评论(10) 推荐(28) 编辑
摘要:一:背景 1. 讲故事 每次项目预交付的时候,总会遇到各种奇葩的坑,我觉得有必要梳理一下以及如何快速解决的,让后来人避避坑,这篇就聊聊自己的所闻所遇: 我去,本地环境代码跑的哧溜,上了测试环境出问题 我去, 第三方提供的 dll 跑出 bug 了 二:两个大坑的解决方案 1. 本地环境没问题,上了测 阅读全文
posted @ 2020-11-04 09:45 一线码农 阅读(3151) 评论(20) 推荐(40) 编辑
摘要:一:背景 1. 讲故事 上周有一个项目交付,因为是医院级项目需要在客户的局域网独立部署。 程序: netcore 2.0,操作系统: windows server 2012,坑爹的事情就来了, netcore sdk 一直装不上,网上找了资料说需要先安装 Visual C++ Redistribut 阅读全文
posted @ 2020-11-02 09:56 一线码农 阅读(1408) 评论(8) 推荐(10) 编辑
摘要:一:背景 1. 讲故事 昨天在园里的编辑头条看到 精致码农大佬 写的一篇题为:[C#.NET 拾遗补漏]10:理解 volatile 关键字 (https://www.cnblogs.com/willick/p/13889006.html) 的文章,大概就是说在 多线程环境下,一个在debug不出现 阅读全文
posted @ 2020-10-30 18:40 一线码农 阅读(1379) 评论(9) 推荐(28) 编辑