一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Backend

C#字符串查找速度优化--StringComparison.Ordinal

本文一些资料参考自https://blog.csdn.net/sinat_27657511/article/details/52275327,感谢这位博主 下面就来谈下StringComparison。   public enum StringComparison { CurrentCulture, CurrentCultureIgnoreCase, InvariantCulture, InvariantCultureIgnoreCase, Ordinal, OrdinalIgnoreCase }   CurrentCulture 使用区域敏感排序规则和当前区域比较字符串。 CurrentCultureIgnoreCase 使用区域敏感排序规则、当前区域来比较字符串,同时忽略被比较字符串的大小写。 InvariantCulture 使用区域敏感排序规则和固定区域比较字符串。 InvariantCultureIgnoreCase 使用区域敏感排序规则、固定区域来比较字符串,同时忽略被比较字符串的大小写。 Ordinal 使用序号排序规则比较字符串。 OrdinalIgnoreCase 使用序号排序规则并忽略被比较字符串的大小写,对字符串进行比较。   StringComparison.Ordinal  在进行调用String.Compare(string1,string2,StringComparison.Ordinal)的时候是进行非语言(non-linguistic)上的比较,API运行时将会对两个字符串进行byte级别的比较,因此这种比较是比较严格和准确的,并且在性能上也很好,一般通过StringComparison.Ordinal来进行比较比使用String.Compare(string1,string2)来比较要快10倍左右.(可以写一个简单的小程序验证,这个挺让我惊讶,因为平时使用String.Compare从来就没想过那么多).StringComparison.OrdinalIgnoreCase就是忽略大小写的比较,同样是byte级别的比较.性能稍弱于StringComparison.Ordinal.   string类型中的Contains函数默认使用了Ordinal方式,所以速度会很快 其他的方法例如IndexOf,CompareTo等都默认使用了CurrentCulture方式,所以速度会相对比较满,可以调用的时候显示声明StringComparison的方式,速度会快很多,下面是测试: 在约1500个字符中查找一个字符‘q’,位于该序列的结尾处。 使用Ordinal方式的速度: 不使用Ordinal方式: 对比发现速度确实快了很多,在文本约庞大时候,效果会更加的明显。   from:https://blog.csdn.net/w199753/article/details/83421165

龙生   26 Feb 2020
View Details

c# ado.net连接mysql报错“Reading from the stream has failed”

“Authentication to host ‘localhost’ for user ‘root’ using method ‘mysql_native_password’ failed with message: Reading from the stream has failed” 昨天晚上,因为某些原因,几天没打开的C#.net winform项目调试时突然启动失败,冒出来这个提示。 说实话,因为没抓着重点,我昨晚基本上就浪费了,虽然我猜到了是连接超时之类的原因,可一直没明白究竟是我弄错了什么,才会连接不上MySQL数据库 今天再找原因的时候,就Get到重点了:“Reading from the stream has failed”,这个是数据库返回的报错信息 搜索了一下,看到一个文章,说是从MySQL5.7以后,就增加了SSL连接验证功能,这个功能就可能导致上面这个报错,关掉它的话,连接速度能变快 尽管根据了解到的资料,SSL这个校验应该不会影响到使用 Localhost(本地)方式连接的才对,但还是死马当活马医,在ado.net连接字符串里加上了“SslMode=None;” 结果是成功的,确实不再报错,连接上了 再回过头来想想,我这两天也没对MySQL做过什么设置更改啊,仅有的操作,就是配置了一下ODBC数据源,怎么会突然间就出现这毛病呢? 不知道有没有大佬了解的,求科普 ———————————————— 版权声明:本文为CSDN博主「某店长」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/jdjdjdjdjdjd/article/details/89068331

龙生   24 Feb 2020
View Details

linux常用查看文件或日志命令

常见查看文件内容命令汇总如下: cat     filename           查看日志,会打开整个文件,直接跑到最后面 tac     filename           查看日志,会打开整个文件,倒序显示,不常用 more  filename           查看日志,可以上下翻页,上下行移动显示 less    filename           查看日志,和more命令类似,但不能往回翻页 tail   -f   filename         查看文件,实时显示最后一页 vi        filename           查看或编辑文件   查找文件内容关键字方法: 先 执行命令>:  vi      filename 然后输入>:   /查找字符串 按n查找下一个 示例: 如查找nohup.out日志文件的error关键字: 执行命令:         vi  nohup.out 输入以下回车:      /error 按n查找下一个,按N(大写)查找上一个   将实时日志打印到指定文件: 示例: 将实时日志打印到文件newlog.log内,方便查找 执行命令:   tail  -f  nohup.out   >newlog.log 备注:newlog.log文件可以不存在,命令执行时会自动新建   from:https://www.cnblogs.com/whitemouseV2-0/p/9990676.html

龙生   21 Feb 2020
View Details

git放弃暂存区的修改

  from:https://blog.csdn.net/weixin_36149892/article/details/86597086

龙生   18 Feb 2020
View Details

web config 处理跨域请求

<system.webServer> <httpProtocol> <customHeaders> <add name="Access-Control-Allow-Methods" value="OPTIONS,POST,GET"/> <add name="Access-Control-Allow-Headers" value="x-requested-with"/> <add name="Access-Control-Allow-Origin" value="*" /> </customHeaders> </httpProtocol> </system.webServer> from:https://www.cnblogs.com/soonqian/p/6548118.html

龙生   16 Feb 2020
View Details

asp.net允许跨域配置web.config

  from:https://www.cnblogs.com/q149072205/p/11089954.html

龙生   16 Feb 2020
View Details

Linux下部分删除history记录

Linux环境: CentOS Linux release 7.3.1611 (Core) 目的: 保护操作隐私。。 首先看history命令详细情况: 一般我们已知的是history -c 命令,即清除所有历史记录 但是如果服务器用的是公司的,就不好执行这种粗暴的操作了。。 部分删除操作: 1.vim ~/.bash_history 该文件即为历史记录存储文件,我们随意修改 2.修改后再次 history 查看,发现并没有变化。原因:缓存 执行:history -r 读取历史文件并将其内容添加到历史记录中,即重置文件里的内容到内存中,完成修改!   from:https://blog.csdn.net/abysscarry/article/details/79700293

龙生   15 Feb 2020
View Details

Git-查看远程分支、本地分支、创建分支

1.查看本地分支

  2.查看远程分支

  3.查看所有分支

4.切换远程分支

PS:作用是checkout远程的Release分支,在本地起名为myRelease分支,并切换到本地的myRelase分支 5.合并分支 合并前要先切回要并入的分支 以下表示要把issue1234分支合并入master分支

6.撤消上一次commit的内容(该操作会彻底回退到某个版本,本地的源码也会变为上一个版本的内容) git reset --hard <commit-id> 以下表示要撤消“update build gradle configuration file”这一次的commit id,返回到"add battery settings ui"这一次的commit id,

7. git commit -m 注释换行 git commit -m 注释可以通过单引号来换行,比如:

通过git commit --amend 命令可以查看到刚刚的log信息为

  from:https://www.cnblogs.com/yongdaimi/p/7600052.html

龙生   15 Feb 2020
View Details

Git 基础 – 打标签

打标签 像其他版本控制系统(VCS)一样,Git 可以给历史中的某一个提交打上标签,以示重要。 比较有代表性的是人们会使用这个功能来标记发布结点(v1.0 等等)。 在本节中,你将会学习如何列出已有的标签、如何创建新标签、以及不同类型的标签分别是什么。 列出标签 在 Git 中列出已有的标签是非常简单直观的。 只需要输入 git tag:

这个命令以字母顺序列出标签;但是它们出现的顺序并不重要。 你也可以使用特定的模式查找标签。 例如,Git 自身的源代码仓库包含标签的数量超过 500 个。 如果只对 1.8.5 系列感兴趣,可以运行:

创建标签 Git 使用两种主要类型的标签:轻量标签(lightweight)与附注标签(annotated)。 一个轻量标签很像一个不会改变的分支——它只是一个特定提交的引用。 然而,附注标签是存储在 Git 数据库中的一个完整对象。 它们是可以被校验的;其中包含打标签者的名字、电子邮件地址、日期时间;还有一个标签信息;并且可以使用 GNU Privacy Guard (GPG)签名与验证。 通常建议创建附注标签,这样你可以拥有以上所有信息;但是如果你只是想用一个临时的标签,或者因为某些原因不想要保存那些信息,轻量标签也是可用的。 附注标签 在 Git 中创建一个附注标签是很简单的。 最简单的方式是当你在运行 tag 命令时指定 -a 选项:

-m 选项指定了一条将会存储在标签中的信息。 如果没有为附注标签指定一条信息,Git 会运行编辑器要求你输入信息。 通过使用 git show 命令可以看到标签信息与对应的提交信息:

输出显示了打标签者的信息、打标签的日期时间、附注信息,然后显示具体的提交信息。 轻量标签 另一种给提交打标签的方式是使用轻量标签。 轻量标签本质上是将提交校验和存储到一个文件中——没有保存任何其他信息。 创建轻量标签,不需要使用 -a、-s 或 -m 选项,只需要提供标签名字:

这时,如果在标签上运行 git show,你不会看到额外的标签信息。 命令只会显示出提交信息:

后期打标签 你也可以对过去的提交打标签。 假设提交历史是这样的:

现在,假设在 v1.2 时你忘记给项目打标签,也就是在 “updated rakefile” 提交。 你可以在之后补上标签。 要在那个提交上打标签,你需要在命令的末尾指定提交的校验和(或部分校验和):

可以看到你已经在那次提交上打上标签了:

共享标签 默认情况下,git push 命令并不会传送标签到远程仓库服务器上。 在创建完标签后你必须显式地推送标签到共享服务器上。 这个过程就像共享远程分支一样——你可以运行 git push origin [tagname]。

如果想要一次性推送很多标签,也可以使用带有 --tags 选项的 git push 命令。 这将会把所有不在远程仓库服务器上的标签全部传送到那里。

现在,当其他人从仓库中克隆或拉取,他们也能得到你的那些标签。 删除标签 […]

龙生   15 Feb 2020
View Details

CentOS 7 最小化安装的无线网络配置

1.首先下载iw工具。 yum -y install iw 2.获取无线网卡的名称 执行iw dev,假设获得名称为 wlp3s0(示例) 3.激活无线网络接口 执行ip link set wlp3s0 up 4.扫描当前环境中的无线网络 执行iw wlp3s0 scan|grep SSID,假设你能够连接的网络名称是TP-LINK-1(示例) 5.登录指定网络 执行wpa_supplicant -B -i wlp3s0 -c <(wpa_passphrase "TP-LINK-1" "此网络的密码") 6.主动请求动态地址 dhclient wlp3s0 7.查看获取的网络地址 执行ip addr show wlp3s0 上善若水,水利万物而不争。 from:https://www.cnblogs.com/yoyotl/p/6090721.html

龙生   14 Feb 2020
View Details
1 93 94 95 281