c# windows编程
文章平均质量分 75
an3gsonnzhy
追求疯子的理想
展开
-
如何:对 Windows 窗体控件进行线程安全调用
序:访问 Windows 窗体控件本质上不是线程安全的。如果有两个或多个线程操作某一控件的状态,则可能会迫使该控件进入一种不一致的状态。还可能出现其他与线程相关的 bug,包括争用情况和死锁。确保以线程安全方式访问控件非常重要。 .NET Framework 有助于在以非线程安全方式访问控件时检测到这一问题。在调试器中运行应用程序时,如果创建某控件的线程之外的其他线程试图调用该控件,则原创 2008-08-03 20:50:00 · 556 阅读 · 0 评论 -
c#实现各种排序(未完)
//冒泡排序 //原理:从底部冒泡(逐个比较并进行交换),将最大(小)的元素顶到上面来.对已经排好序的就不再进行排序 //优化:对是否交换进行监视,如果没有发生交换,则已经排好序 static void PopSort(params int[] s) { int n = s.Length; //数组元素个数 //需要冒泡n-1原创 2008-08-05 09:54:00 · 446 阅读 · 0 评论 -
C#制作的更换壁纸程序
先让我们来了解一个API吧,SystemParametersInfo,这个API的功能很简单就是通过一些参数的设置来完成对系统的一些外观设置.函数原型如下:BOOL SystemParametersInfo( UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni );该函数返回一个Bool值.非0成功,转载 2008-08-02 14:19:00 · 1300 阅读 · 1 评论 -
c# 多线程 编程
一.多线程的概念 Windows是一个多任务的系统,如果你使用的是windows 2000及其以上版本,你可以通过任务管理器查看当前系统运行的程序和进程。什么是进程呢?当一个程序开始运行时,它就是一个进程,进程所指包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的,线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即转载 2008-08-03 11:02:00 · 364 阅读 · 0 评论 -
Visual C#多线程参数传递浅析
C#多线程传递参数的方法:1.通过构造函数传递2.使用线程池的QueueUserWorkItem 方法.该方法第二个参数就是 传递的参数3.最后一种方法使用异步委托来实现参数的传递//////////////////////////////////////////////////////////////////////////////////////////////////////转载 2008-08-03 19:47:00 · 567 阅读 · 0 评论 -
匿名方法
要将代码块传递为委托参数,创建匿名方法则是唯一的方法。例如:C#button1.Click += delegate(System.Object o, System.EventArgs e)//传递参数 { System.Windows.Forms.MessageBox.Show("Click!"); }; C#delegate void Del(i原创 2008-08-03 21:37:00 · 445 阅读 · 0 评论