3 HOLD ON!

尚未进行身份认证

莫见长安行乐处,空令岁月易蹉跎。

等级
TA的排名 6k+

C# lock 自旋锁,互斥锁,混合锁,读写锁介绍

C# lock 自旋锁,互斥锁,混合锁,读写锁介绍c# 并行编程、多线程开发中,经常要用到线程锁,so, 看了许多文章,想总结一下,供自己理解记忆,以及园丁们参考使用,理解的不怎么全面,勿喷!在多线程环境中,多个线程可能会同时访问同一个资源,为了避免访问发生冲突,可以根据访问的复杂程度采取不同的措施,原子操作适用于简单的单个操作,无锁算法适用于相对简单的一连串操作,而线程锁适用于复杂的一连串操作1.lock锁的解释和用法官方MSDN的说法:lock 关键字可确保当一个线程位于代码的临界区时,另.

2020-05-25 13:33:10

C# 线程安全集合

C# 线程安全集合转载对于并行任务,与其相关紧密的就是对一些共享资源,数据结构的并行访问。经常要做的就是对一些队列进行加锁-解锁,然后执行类似插入,删除等等互斥操作。 .NetFramework 4.0 中提供了一些封装好的支持并行操作数据容器,可以减少并行编程的复杂程度。基本信息.NetFramework中并行集合的名字空间: System.Collections.Concurrent并行容器:•ConcurrentQueue•ConcurrentStack•Concu

2020-05-25 11:30:19

ServiceStack.Redis 使用教程

ServiceStack.Redis 使用教程环境准备Redis (使用Windows版本做测试,运营环境建议使用Linux版本) ServiceStack.Redis-v3.00在Windows上运行Redis服务器作开发和测试是很好的,但是在运营环境还是Linux版本靠谱,下面我们就先解压Redis到一个目录下:运行redis-server.exe看到如下Windows控制台:上面我们可以看到Redis运行的端口是6372我们先玩一下Redis的客户端控制台,在相同目录.

2020-05-25 09:21:26

Nginx 路径匹配规则,通配符

Nginx 路径匹配规则,通配符jy02149522 2018-01-15 17:06:24 37227 收藏 13展开Nginx路径匹配符号= 表示精确匹配^~ 表示uri以某个常规字符串开头,大多情况下用来匹配url路径,nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格)。~ 正则匹配(区分大小写)~* 正则匹配(不区分大小写)!~和!~*分别为区分大小写不匹配及不区分大小写不匹配 的正则/ 任何请求都..

2020-05-23 17:19:18

sql server 函数--rand() 生成整数的随机数

sql server 函数--rand() 生成整数的随机数rand() 定义: 返回从0到1之间的随机浮点值。举例说明:select rand()as随机数 结果如图:select cast(floor(rand()*N)as int) --方法1结果:20select cast( ceiling(rand()*N) as int ) --方...

2020-05-23 16:07:36

Multiple outputs from T4 made easy – revisited

Multiple outputs from T4 made easy – revisited6 November 2009.NETEntity FrameworkLINQT4Mymultiple outputs from t4 made easypost contained a class making it easy to produce multiple files from Visual Studio’s text templating engine (T4).While us...

2020-05-23 10:38:26

在SQL Server 中创建外键

在SQL Server 中创建外键建外键的前提是此外键必须是另外一个表的主键。建外键的步骤: 第一步打开要建外键表的设计器,右击选择“关系”。然后弹出“外键关系”窗体,我们选择“添加”,然后点击“表和列规范”后面的小按钮,就会弹出另外一个窗体让我们选择主键表和列,选好之后点击确定。然后我们展开INSERT和UPDATE规范,在更新规则和删除规则有四个选项,分别是“不执行任何操作”、“级联”、“设置为NULL”、“设置默认值”。 默认的不执行任何操作。如果是“不执行任何操作”,当我们删除..

2020-05-22 20:34:08

了解C#中的HashSet与示例

了解C#中的HashSet与示例在C#中引入HashSet在.NET框架中,有几个类可用于执行这些操作。一些课程如下:列表 字典 哈希集 队列集合在C#编程中,像ArrayList,List这样的集合,只需添加其中的值,而不检查任何重复。为了避免这种重复的数据存储,.NET提供集合名称集。这是一个具有不同项目的集合类型。有两种类型的集合,SortedSet和HastSet。SortedSet按照排序顺序存储数据,也可以消除重复。哈希集vs SortedSet这两个类都存.

2020-05-22 16:23:25

JavaScript Date.parse()详解

JavaScript Date.parse()详解Date.parse()函数用于分析一个包含日期的字符串,并返回该日期与 1970 年 1 月 1 日午夜之间相差的毫秒数。语法Date.parse( dateString )参数参数 描述 dateString String类型一个表示日期的字符串。 返回值Date.parse()函数的返回值为Number类型,返回该字符串所表示的日期与 1970 年 1 月 1 日午夜之间相差的毫秒数。下面这些...

2020-05-22 15:41:51

C# 各数据类型 范围

C# 各数据类型 范围类型           范围                    大小sbyte          -128到127               有符号8位整数byte             0到255              无符号8位整数char         U+0000到U+ffff              16位Unicode字符short         -3...

2020-05-22 15:41:12

C# 委托(二)—— 多播委托与事件

C# 委托(二)—— 多播委托与事件原创wnvalentin发布于2018-09-01 19:47:35阅读数 2138目录1 多播委托1.1 多播委托的实例化1.2 多播委托的调用与返回结果1.3 多播委托的逐个调用2 事件2.1 事件的本质2.2 事件用法三步曲2.3 事件与多播委托的区别上一篇文章中,介绍了委托的基本用法(传送门:https:/...

2020-05-22 10:42:26

使用C#从图片文件生成图标ICON文件(附源文件)

使用C#从图片文件生成图标ICON文件(附源文件)看到网上有一些网站做图标转换工具,挺好的,所以研究了一下在C#中是如何实现的。其实很简单几行代码就可以搞定。主要是使用System.Drawing.Icon类的Icon.FromHandle工厂方法。其关键代码如下:publicpartialclassFormMain:Form{publicFormMain(){InitializeComponent(...

2020-05-22 09:58:57

Vue.js 根据数据,进行Table单元格合并

Vue.js 根据数据,进行Table单元格合并ITKouSyou 2018-10-16 14:29:40 3493 收藏 2展开表格代码<table cellspacing="0" cellpadding="0" border="0" style="height: auto; width: 100%"> <thead> <tr> <th>项目</th> <th>类型</th> ...

2020-05-22 08:48:03

Date.parse()与Date.getTime()方法详解(js获取时间戳的几种方式)

Date.parse()与Date.getTime()方法详解(js获取时间戳的几种方式)LeonWuV 2018-02-08 00:58:42 53225 收藏 6展开欢迎访问我的个人博客:http://www.xiaolongwu.cn前言这两个方法的返回值都是 1970/1/1 午夜距离该日期时间的毫秒数如何使用下面的例子中,我们将取得从 1970/01/01 到 2017/03/19 的毫秒数1、Date.parse()的使用// 返回自定义时间戳Date.par...

2020-05-21 15:30:26

Webpack打包构建太慢了?试试几个方法

Webpack打包构建太慢了?试试几个方法Webpack是个很流行的打包工具,但其打包速度却一直被吐槽着如果不用上一些打包的优化建议,单单打包两三个文件就能花上好几秒,放上几十个入口文件依赖几百上千个包的话,几分钟十几分钟妥妥的本文整理了常见的一些方法,部分使用之后就看到了很大改善,部分没什么明显的变化,也可能是项目规模还不够大,先记录一下方法也好还是太慢了,快快使用Webpack4一、使用监听模式或热更新热替换webpack支持监听模式,此时需要重新编译时就可以进行增量构建,增

2020-05-21 13:06:10

简单的利用JS来判断页面是在手机端还是在PC端打开的方法

简单的利用JS来判断页面是在手机端还是在PC端打开的方法  在移动设备应用越来越广泛的今天,许多网站都开始做移动端的界面展示,两者屏幕尺寸差异很大,所以展示的内容也有所差别。于是就遇到一个问题,如何判断你的页面是在移动端还是在PC端打开的,很简单的问题,那我们就简单点来说,以我们公司的官网来说,PC端和移动端的官网界面分别如下:Navigator对象  首先来了解一下Navigator 对象,Navigator 对象包含有关浏览器的信息,下面的userAgent 属性是一个只读的字.

2020-05-21 12:49:03

消除input,button之间的间距

消除input,button之间的间距代码:效果:问题:input,button标签之间出现了间距,这并不是我们所期望的。解决方法:1.在父级元素上设置属性:font-size:0px;将input父级字体(font-size)设为0px,可以消除间隔,但是得重新设置内联元素(input)的字体大小;2.去掉input,button标签之间的空格3.设置input为块元素,并且给一个左浮动效果:原因:input是内联块状元素(i.

2020-05-21 11:14:34

JavaScript RegExp 对象

JavaScript RegExp 对象RegExp 对象RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具。直接量语法/pattern/attributes创建 RegExp 对象的语法:new RegExp(pattern, attributes);参数参数pattern是一个字符串,指定了正则表达式的模式或其他正则表达式。参数attributes是一个可选的字符串,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的...

2020-05-21 10:28:50

JavaScript 正则表达式

JavaScript正则表达式正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。搜索模式可用于文本搜索和文本替换。什么是正则表达式?正则表达式是由一个字符序列形成的搜索模式。当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。正则表达式可以是一...

2020-05-21 10:23:40

js中字符串全部替换

js中字符串全部替换废话不多说,直接发结果在js中字符串全部替换可以用以下方法: str.replace(/需要替换的字符串/g,"新字符串")比如:"yyyy-MM-dd-hh-mm-ss".replace(/-/g,"/")结果如下:"yyyy/MM/dd/hh/mm/ss"原理请看JavaScript replace() 方法介绍定义和用法replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。...

2020-05-21 10:21:36

查看更多

勋章 我的勋章
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。