Loading

Loading

随笔分类 -  C#

摘要:分支或多线程编程是编程时最难最对的事情之一。这是由于它们的并行性质所致,即要求采用与使用单线程的线性编程完全不同的思维模式。对于这个问题,恰当类比就是抛接杂耍表演者,必须在空中抛接多个球,而不要让它们相互干扰。这是一项重大挑战。然而,通过正确的工具和思维模式,这项挑战是能应对的。 本文将深入介绍我为 阅读全文
posted @ 2019-03-22 22:34 楚人Leo 阅读(1662) 评论(1) 推荐(9) 编辑
摘要: 在上一篇译文——《深入理解C#——在C#中实现单例模式》中,对在C#中实现单例模式进行了详细阐述。我们在日常的开发中可以采用解决方案4或解决方案6来实现单例模式,但每个单例类都需要单独实现。 我们再来看看使用单例模式的一些场景: 阅读全文
posted @ 2019-01-16 01:15 楚人Leo 阅读(2194) 评论(0) 推荐(2) 编辑
摘要: 单例模式是软件工程中最着名的模式之一。从本质上讲,单例是一个只允许创建自身的单个实例的类,并且通常可以简单地访问该实例。最常见的是,单例不允许在创建实例时指定任何参数——否则对实例的第二个请求但具有不同的参数可能会有问题!(如果对于具有相同参数的所有请求都应访问相同的实例,则工厂模式更合适。)本文仅处理不需要参数的情况。通常,单例的要求是它们是懒惰地创建的——即直到第一次需要时才创建实例。 阅读全文
posted @ 2019-01-09 23:33 楚人Leo 阅读(24179) 评论(8) 推荐(17) 编辑
摘要:背景 最近做的项目中有这样一个场景,设置任意一种颜色,得到这种颜色偏深和偏浅的两种颜色。也就是说取该颜色同色系的深浅两种颜色。首先想到的是调节透明度,但效果不理想。后来尝试调节颜色亮度,发现这才是正解。但是.NET中不能直接改变Color的亮度,需要将Color转换成HSB模式,然后改变B的值调节亮 阅读全文
posted @ 2015-08-15 18:55 楚人Leo 阅读(2156) 评论(1) 推荐(0) 编辑
摘要:1、我们知道任何一门编程语言均有相关数据类型。C#也不例外,其基本数据类型有int,short,long,float,double,string等。数据类型之间可以相互转换。不过转换过程要注意小类型能转换成大类型,但大类型一般不能转换成小类型。如int型可以转换成float型,但float型不一定可 阅读全文
posted @ 2012-10-18 21:16 楚人Leo 阅读(6635) 评论(2) 推荐(5) 编辑