自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

转载 『卧槽』意外发现了 Hashtable 的 foreach 用法 BUG

这段时间,公司项目中 遇到一个问题,最后查出: 是 Hashtable 的用法导致的。 1 private static void AutoCleanCache() 2 { 3 try 4 { 5 lock (m_HashCache.SyncRoo...

2019-06-10 17:12:00 290

转载 『性能』List 和 HashSet 查找性能比较 (任何数据量的检索 从此只用 HashSet )

结论:总数 50000 (5万): List 检索 5W次 耗时 23秒, HashSet 检索 5W次 耗时 0.01秒。总数 5000 (5千): List 检索 5K次 耗时 0.16秒, HashSet 检索 5K次 耗时 0.001秒。总数 500 (5百):List 检索 500次 耗时 0.004秒, HashSet 检索 500次 耗时 0.00...

2019-03-30 15:40:00 3504

转载 『备注』GDI+ 绘制文本有锯齿,透明背景文本绘制

背景:GDI+ 绘制文本 时,如果 背景是透明的 —— 则会出现 锯齿。1 //其实,我不用这三个 属性 好多年了 2 //而且,这三个属性 在关键时刻还有可能 帮倒忙3 //关键是:这三个属性,鸟用都没有 —— 不能消除锯齿4 g.SmoothingMode = SmoothingMode.HighQuality;5 g.InterpolationMode ...

2019-03-27 11:04:00 952

转载 『动态』动态JSON万能转换函数 + .Net40 dynamic动态数据绑定

不废话,调用代码: 1 static void Main(string[] args) 2 { 3 string json = File.ReadAllText("2.txt", Encoding.Default); 4 5 object result = JsonConvert.D...

2019-02-18 10:22:00 430

转载 『随笔』.Net 底层 数组[] 的 基本设计探秘 512 子数组

1 static void Main(string[] args) 2 { 3 Console.ReadKey(); 4 5 //初始化数组 不会立即开辟内存字节, 只有实际给数组赋值时 才会开辟内存 6 // 7 //猜...

2018-12-03 20:03:00 151

转载 『发呆』.Net 2.0 ~ .Net 4.0 所实现了那些底层

随着时间的推移,程序越写越大,代码越写越少。今天突然发呆,就想比较全面的汇总一下 .Net 2.0 和 .Net 4.0 都实现的功能。.Net 2.0 的大部分常见程序集 (已经过滤掉了一部分和常见业务无关的程序集).Net 4.0 的大部分常见程序集 (已经过滤掉了一部分和常见业务无关的程序集).Net 4.0 WPF (.Net 3.5 就有了 ...

2018-08-27 23:56:00 205

转载 『开源』扩展 JS 的 Date 处理函数

背景:JS 有自己的 时间类型 Date —— 但是,在某些情况下 这个对象似乎 不太好用。本文 基于 JQuery 扩展了一些 JS日期函数,包括:> 字符串 转 Date 对象 万能函数(性能仅 10W次/s,函数有路径优化,字符串越诡异 耗时越长)> Date 转 字符串 格式化> 两个 Date 的差值 (返回的结果类似 C# TimeS...

2018-08-16 16:32:00 124

转载 『片段』Win32 模式窗体 消息路由

需求背景近来,有个需求: 和一个外部程序对接。具体是,我这边 主程序用 Process 启动外部程序。外部程序启动后,我这边调用的窗体不允许再进行任何操作。当外部程序关闭时,外部程序会向我这边的主程序 返回结果。传统做法1 Process process = Process.Start("外部程序.exe", "-外部程序的参数");2 process....

2018-08-02 16:27:00 124

转载 『审慎』.Net4.6 Task 异步函数 比 同步函数 慢5倍 踩坑经历

异步Task简单介绍本标题有点 哗众取宠,各位都别介意(不排除个人技术能力问题) —— 接下来:我将会用一个小Demo 把 本文思想阐述清楚。.Net 4.0 就有了 Task 函数 —— 异步编程模型.Net 4.6 给 Task 增加了好几个 特别实用的方法,而且引入了 await async 语法糖当然,这是非常不错的技术,奈何我有自己的线程队列封装,也就没有着...

2018-07-24 19:27:00 318

转载 『性能』测试一下 MSSqlHelper 的性能

本文没啥技术含量,就是测试一下 MSSqlHelper 在 使用反射、不使用反射 的性能对比。之后,不要问为什么不用 ORM 这类的东西 —— 会有另外的文章 介绍 自己这些年 自己的ORM 升级历史。背景:我自己有一个 MSSqlHelper, 这个 辅助类 是最基本的一个 数据库操作类。Query 查询集合时,可以指定 reader => 对象 的委...

2018-07-22 01:47:00 238

转载 『性能』ServiceStack.Redis 和 StackExchange.Redis 性能比较

背景近来,需要用到 Redis 这类缓存技术 —— MongoDB 和 Redis 没有进行过比较。我也懒得在这些细节上 纠结那么多 —— 按照网友给出的文章,听从网友建议,选择 Redis。Redis 我在 2014年的时候正式用过一次,那时候用的是 ServiceStack.Redis —— 要引用4、5个程序集,挺闹心的。正题开始比较 客户端调用时, S...

2018-07-13 11:09:00 1333

转载 『神坑』DotNetty 内存泄漏 解决办法

背景近来在用 DotNetty 实现一个文件上传下载的同步服务。其中:客户端下载服务端的文件,客户端多次请求,从服务端将文件分片下载下来,追加到本地磁盘。—— 非常简单的代码,都写了几十次了,驾轻就熟。问题来了可是:在进行压力测试时,我这边下载一个 Win10 的 ISO 镜像,4个G。我发现:客户端内存不停增长,直到内存溢出 —— 我擦。VS2015内存...

2018-07-10 19:58:00 1012

转载 『OGG 03』Win7 配置 Oracle GoldenGate 一次性成功(包括Adapter Java)

安装Oracle:安装 Oracle_11g 32位【Oracle 32位的话,OGG 也必须是 32位,否则会有0xc000007b无法正常启动 错误】安装目录为 D:\oracle\product\11.1.0\db1 【这个目录要设置为 环境变量 ORACLEHOME】设置环境变量:JAVAHOME C:\Program Files\Java\jdk1....

2018-06-30 14:03:00 520

转载 『OGG 02』Win7 配置 Oracle GoldenGate Adapter Java 踩坑指南

上一文章 《__Win7 配置OGG(Oracle GoldenGate).docx》定下了 两个目标:目标1:给安装的Oracle_11g 创建 两个用户 admin 和 root 。admin 对应了 ADMIN 结构,创建了一个 TB_ TEST表。root 对应了 ROOT 结构,也创建一个 TB_ TEST (表结构一摸一样)。当 admin.T...

2018-06-30 12:52:00 215

转载 『OGG 01』Win7 配置 Oracle GoldenGate 踩坑指南

安装 Oracle安装 Oracle11g 32位【Oracle 32位的话,OGG 也必须是 32位,否则会有0xc000007b无法正常启动 错误】 安装目录为 D:\oracle\product\11.1.0\db1 【这个目录要设置为 环境变量 ORACLE_HOME】设置环境变量JAVAHOME    C:\Program Files\Java\jdk1.8.0...

2018-06-30 10:33:00 256

转载 『片段』ShellHelper 控制台程序 的 程序调用(支持输入命令得到返回字符串输出)...

背景:> 之前做 OGG 时,被 OGG的配置 恶心到了。(OGG是啥,这里就不解释了)> 总之就是一个 控制台程序,总是得手动执行一堆命令,每次都得输入 —— 实在是打字打累了。> 于是,搜索:Shell控制输入输出 的代码 —— 没有找到完美的。【部分网友给出的往往是:一堆命令,得到全部输出 —— 而我要的是:输入一行命令就得到对应的输出】源码...

2018-06-28 19:57:00 264

转载 『调错』OGG Error opening module ggjava_ue.dll

Win7 配置 OGG (GoldenGate) Adapter Java 时,报错:ERROR OGG-01122 Oracle GoldenGate Capture, javaue.prm: Error opening module ggjava_ue.dll - ].ERROR OGG-01668 Oracle GoldenGate Capture, javaue.p...

2018-06-08 10:00:00 536

转载 『开源』设置系统 主音量(0~100 静音) VolumeHelper 兼容 Xp Win7 .Net 20 AnyCPU

背景:近来的生活一团乱麻,没心态写高大上的代码,于是就着手 写了几个 辅助类。在整理 InkFx.Utils 时,发现有几个 辅助类 只写了定义,没有实现函数体,于是就 花了1天时间 完善了一下。本文介绍的是 系统主音频 控制 的 辅助类VolumeHelper百度搜索:> 在 百度 和 各种技术论坛,搜索相关代码 —— 部分代码千篇一律,兼容性不太理...

2018-04-02 14:41:00 196

转载 『练手』通过注册表 获取 VS 和 SQLServer 文件路径

获取任意 VS 和 SQLServer 的 磁盘安装目录。背景需求:如果磁盘电脑安装了 VS 或者 SQLServer 则 认定这台计算机 的使用者 是一名 软件研发人员,则让程序 以最高权限运行。代码如下:(基于注册表读取、exe版权信息校验) static void Main(string[] args) { ...

2017-12-03 20:21:00 233

转载 『练手』手写一个独立Json算法 JsonHelper

背景:> 一直使用Newtonsoft.Json.dll 也算挺稳定的。> 但这个框架也挺闹心的:> 1、影响编译失败:https://www.cnblogs.com/zihuxinyu/archive/2013/05/06/3063181.html (我也经常遇到)> 2、WinCE版本(小众用户)太大:Newtonsoft.Json.Comp...

2017-11-24 23:46:00 652

转载 『尝试』随手绘制几张点阵图片

本文仅属 个人尝试,最终目的是实现 点阵图片 存储离线数据。本文只包括 生成 点阵图片的代码,不包括 读取点阵图片。 1 class Program 2 { 3 static void Main(string[] args) 4 { 5 6 int ...

2017-11-22 12:22:00 272

转载 『实用』过滤字符串中的幽灵字符

背景:一段明显的字符串,可能潜伏着看不见 的 幽灵字符。某些字符 比较常见、常用,比如: \r \n \t但是,有些 幽灵字符(保守估计 >200~1000个),不仅不常见,而且基本没价值。这些幽灵字符,潜伏在 正常字符串中,有的伪装成空格符,有的直接隐形。当你要 处理字符串时,这些幽灵字符 的 恶意可能就开始显现 : 部分字符串函数 会因此引发BUG。...

2017-11-17 23:47:00 1678

转载 『转载』从内存资源中加载C++程序集:CMemLoadDll

MemLoadDll.h#if !defined(Q_OS_LINUX) #pragma once typedef BOOL (__stdcall *ProcDllMain)(HINSTANCE, DWORD, LPVOID ); class CMemLoadDll { public: CMemLoadDll();...

2017-10-18 21:34:00 392

转载 『开源重编译』System.Data.SQLite.dll 自适应 x86 x64 AnyCPU 重编译

背景:> System.Data.SQLite.dll 程序集 不能良好的支持 AngCPU 格式System.Data.SQLite.dll 在 适应 x86 和 x64 有三个方案:> 分别使用 32 或 64 的 混合编译程序集(程序如果以64位 运行,但引用32位的 程序集 就会报错,反之) —— 所以这种方案 很惹人嫌。> 使用 AnyC...

2017-10-01 23:31:00 519

转载 『备注』&#x; 格式 的编码转换

在很多 网站(或者很多 WebService),我们总能看到 Ӓ &#A22A; 这种格式 的编码。如何将这种编码 转换成 实际文本,C#代码如下: 1 //各种 幺蛾子网页图标 请参见: https://dev.w3.org/html5/html-author/charref 2 3 string s...

2017-09-29 19:25:00 351

转载 『BUG』Android Studio 64位 始终提示 JVM 启动不了,JDK配置失败,error code -1

前几天 安装了 Android Studio 2.2。本来一切都好,但是当我修改了 配置文件studio64.exe.vmoptions 想修改 最大内存(保证运行流畅)后,AS 就再也运行不了了。报错内容大意是: error code -1,必须配置 JAVA_HOME 参数,而且这个参数 不能指向 JRE,必须指向 JDK。配置环境变量后,各种检测都没有问题 —...

2017-01-23 04:41:00 713

转载 『随笔』C# 程序 修改 ConfigurationManager 后,不重启 刷新配置

基本共识:ConfigurationManager 自带缓存,且不支持 写入。如果 通过 文本写入方式 修改 配置文件,程序 无法刷新加载 最新配置。PS. Web.config 除外:Web.config 修改后,网站会重启 (即 Web 程序 也无法在 运行时 刷新配置)。为什么要在程序运行时,修改配置(刷新配置):> 以前C++,VB 时代,用户在程...

2016-09-07 14:42:00 431

转载 『随笔』Socket 链接 必须 上下行 同时使用

结论:> Socket 理论上 支持 只上行,或者 只下行。> 心跳包 必须是 上下行的 —— 心跳包请求(上行) - 心跳包响应(下行)。> 如果 长时间 只有单向链接(只发送不接受,或者 只接受不发送) —— 路由器 就会 丢弃 Socket数据。> 心跳包 不是 必须的 —— 任意 上下行组合 都能 维持 Socket 所需的 软件(操作系统...

2016-08-16 14:16:00 275

转载 『备忘』HttpWebRequest 在 POST 提交时, 标头(Headers)丢失原因

近来研究 HttpWebRequest —— 辅助类完成时,POST JSON数据 总会 丢失标头(Headers)。HttpWebRequest POST JSON数据,分如下几步:> 将 JSON 转为 byte[]。> 从 HttpWebRequest.GetRequestStream() 获得 写入流。> 将 byte[] 写入...

2016-07-17 03:07:00 864

转载 『片段』C# DateTime 时间相减 和 时区的关系

本文只是基础代码片段,直接先写 结论: C# DateTime 时间相减 —— 和 时区无关,只和时间值有关。运行结果:测试代码: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 nam...

2016-06-23 14:52:00 395

转载 『开源』50行代码 扒取 博客园文章

今天在 博客园 看到一篇文章: 《网络爬虫+HtmlAgilityPack+windows服务从博客园爬取20万博文》于是 心血来潮,立即动手 用 50 行代码,完成 博客园 文章扒取。并非哗众取宠,有图有真相 —— 直接上图。并非恶意攻击 博客园 —— 所以只扒取 10页数据,望 博客园管理员 见谅。数据准备 (浏览器F12拦截监视):  文章列表...

2015-08-07 09:55:00 113

转载 『片段』OracleHelper (支持 多条SQL语句)

C#调用Oracle是如此尴尬>System.Data.OracleClient.dll—— .Net自带的 已经 过时作废。>要链接Oracle服务器,必须在 本机安装Oracle客户端——而SQLServer不需要安装客户端。 win32_11gR2_client.zip(652M) win64_11gR2_...

2015-04-24 16:48:00 158

转载 『.Net』微软家的女儿们

在博客园看到了 一篇文章 《.NET4.0框架退休日期逐渐临近》写下了这篇文章 —— 记录我和 .Net Framework 的 那些日子。微软 家有几个 女儿。2008年,我遇到他们家的 二姐。和她在一起很久,和她在一起,我觉得很幸福。她是一个随和的姑娘,待人谦逊内敛。2008年,开始接触 .Net 编程:VS2005,SQLServer2005,.Net 2.0 ...

2014-08-21 14:01:00 91

转载 『数据库』随手写了一个 跨数据库 数据迁移工具

随手写了一个 跨数据库 的 数据迁移工具:>目前支持 SQLServer,MySql,SQLite;>迁移工具 可以自动建表,且 保留 主键,自增列;>迁移工具 基于 Laura.Source ORM框架 开发;>迁移工具 支持 崩溃恢复(重启迁移工具,将会继续 未完成的 数据迁移);>每张表一个事务(即使 表中有 >100W 的数...

2014-08-15 23:16:00 175

转载 『方案』《女友十年精华》 ORC 图片 文字识别 详解

目的需求:2008年,遇到一本电子书 《女友十年精华》觉得很美,想 私藏 这些文章:>网络搜索文章 —— 没有找到;>反编译程序 —— 所有文字 都是图片格式(部分文章的非规律乱码 即为证明,且试用 Adobe Director 反编译 确是图片无疑)>总计 310篇文章 —— 如何降低 工作复杂度 得到 文本格式的文章?最后方案:&...

2014-07-15 13:53:00 174

转载 『转载』C# winform 中dataGridView的重绘(进度条,虚线,单元格合并等)

原文转载自:http://hi.baidu.com/suming/item/81e45b1ab9b4585f2a3e2243最近比较浅的研究了一下dataGridView的重绘,发现里面还是有很多东西可以学习的,摘录如下(其实就是在dataGridView1_CellPainting写一些代码)主要代码: 1 int top = 0; 2 ...

2014-05-27 10:37:00 985

转载 『随笔』WCF开发那些需要注意的坑

执行如下 批处理:"C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\svcutil.exe" http://127.0.0.1:40001/TestService?wsdl /language:C# /out:"D:\TestProxy.cs" /config:"app.config""C:\Program Files (x86)\Mi...

2014-05-24 15:40:00 99

转载 『开源』Slithice 2013 服务器集群 设计和源码

相关介绍文章:《『设计』Slithice 分布式架构设计-支持一体式开发,分布式发布》《『集群』001 Slithice 服务器集群 概述》《『集群』002 Slithice 集群配置工具 的使用》《『集群』003 Slithice 最简分布式(多个客户端,一个独立服务端)》《『集群』004 Slithice 集群分布式(多个客户端,基于中央服务器的多个集群服务端...

2014-03-18 11:13:00 172

转载 『开源』仿SQLServer山寨一个 跨数据库客户端

002 Laura.SqlForever项目简单介绍相关文章《『练手』001 Laura.SqlForever架构基础(Laura.XtraFramework 的变迁)》《『练手』003 Laura.SqlForever如何扩展 兼容更多数据库引擎》《『练手』004 Laura.SqlForever如何扩展 导航栏 工具栏 右键菜单 插件》《『练手』005 La...

2014-03-17 14:36:00 103

转载 『设计』Laura.Compute 设计思路

前言:前一篇文章 《『开源』也顺手写一个 科学计算器:重磅开源》,继 Laura.Compute 算法开源之后,有 博客园 园友 希望公开一下 Laura.Compute算法 的 设计思路——就是本文了。算法思想:模拟人为思考过程的算法 —— 算法没有任何 取巧 的成分;唯一的优势 在于 算法的抽象思想,算法的架构,算法的 先分析,后运算 的执行模式,还有 算法的...

2013-11-18 00:07:00 127

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除