![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Delegate & Thread
文章平均质量分 82
snlei
大学毕业! 深爱编程
展开
-
C++转向C# 的疑惑:事件的机制究竟是什么?
C++是如此的强大,以至于你可以用它做任何想做的事情,下至各种系统级开发,上至各种大型应用程序。但是我们经常听人说,“C++不是完全的面向对象语言”,且不论这一说法是否正确 ,然而有一个事实是很明显的,那就是 C++并没有直接提供对属性、事件等面向对象、面向组件编程常用特性的支持,虽然我们可以通过各种技术自己实现这些特性,但这无疑会大大降低开发速度。C#中提供了属性和事件,这是令人兴奋的!拥有了这转载 2008-02-02 10:01:00 · 762 阅读 · 0 评论 -
c#中使用多线程访问winform中控件的若干问题
我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题。然而我们并不能用传统方法来做这个问题,下面我将详细的介绍。 首先来看传统方法: public partial class Form1 : Form { public Form1() { InitializeComponent转载 2009-04-27 17:05:00 · 1129 阅读 · 0 评论 -
使用ApplicationBase模型显示Splash Screen
我已经介绍过如何在C#中使用Visual Basic的My.Application模型,但是我没有突出用了他之后有什么比原本C#使用的方式更好的地方。所以我将追加几篇帖子,让C#程序员进一步了解采用这种新Application模型的优点。显示Splash Screen是现代软件常用的手段,显示一个多彩缤纷的Splash Screen可以让应用程序启动的感觉速度加快。但是如何显示Splash S原创 2009-04-28 10:08:00 · 942 阅读 · 0 评论 -
目录间复制文件的线程实现
=============普通方案=================== private void button1_Click(object sender, EventArgs e) { DirectoryInfo dir = Directory.CreateDirectory("C://a"); DirectoryInfo dir2 = Directory.CreateDirectory("C原创 2009-04-28 10:18:00 · 912 阅读 · 0 评论 -
热水器的委托应用与Observer设计模式
委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递,这种将方法动态地赋给参数的做法,可以避免在程序中大量使用If-Else(Switch)语句,同时使得程序具有更好的可扩展性。将方法绑定到委托 假设我们有个高档的热水器,我们给它通上电,当水温超过95度的时候:1、扬声器会开始发出语音,告诉你水的温度;2、液晶屏也会改变水温的显示,来提示水已经快烧开了。原创 2009-04-27 22:38:00 · 2896 阅读 · 2 评论 -
C#中的弱事件(Weak Events in C#)
原文:Weak Events In C#: Different approaches to weak events. by Daniel Grunwald. Download source code - 15.5 KB 翻译前序 翻译后记 目录引言 究竟什么是事件? 第1部分:监听方(Listener-side)的弱事件 解决方案0:仅仅注销翻译 2009-04-27 22:58:00 · 4296 阅读 · 1 评论 -
C#中的多线程编程
C#是.Net平台的通用开发工具,它能够建造所有的.Net应用。在.Net中所有线程都运行在应用程序域(AppDomain)中,这也许让你想到Win32进程,实际上它们还是有很大的不同。应用程序域提供了一种安全而通用的处理单元,公共语言运行库可使用它来隔离应用程序。注意在.Net中应用程序的隔离是应用程序域而不是进程,在单个进程中可以存在几个应用程序域,而且线程可以跨越应用程序域的范围,某个线程中转载 2009-04-27 23:00:00 · 724 阅读 · 0 评论 -
BeginInvoke和EndInvoke方法
一、线程概述在操作系统中一个进程至少要包含一个线程,然后,在某些时候需要在同一个进程中同时执行多项任务,或是为了提供程序的性能,将要执行的任务分解成多个子任务执行。这就需要在同一个进程中开启多个线程。我们使用C#编写一个应用程序(控制台或桌面程序都可以),然后运行这个程序,并打开windows任务管理器,这时我们就会看到这个应用程序中所含有的线程数。 如果任务管理器没有“线程数”列,可转载 2010-04-09 09:22:00 · 679 阅读 · 0 评论 -
分分钟用上C#中的委托和事件
分分钟用上C#中的委托和事件每一个初学C#的程序猿,在刚刚碰到委托和事件的概念时,估计都是望而却步,茫然摸不到头脑的。百度一搜,关于概念介绍的文章大把大把的,当然也不乏深入浅出的好文章。可看完这些文章,大多数新手,估计也只是信心满满的觉得自己看懂了,一旦要在自己的程序中用上委托和事件,就傻眼了,根本不知道什么情况下该用,也不知道具体怎么用。本文没有任何概念介绍,旨在帮助同学们快速用上委托和...转载 2018-07-26 11:21:52 · 321 阅读 · 0 评论