2008年01月
一般地,如果你想保护一个类的实例,你可以使用this;如果你希望保护一个静态变量(如互斥代码段在一个静态方法内部),一般使用类名就可以了。而statement_block就是互斥段的代码,这段代码在一个时刻内只可能被一个线程执行。阅读全文>
发表于 @ 2008年01月24日 00:08:00|评论(loading...)|编辑
在这里我们要注意的是其它线程都是依附于Main()函数所在的线程的,Main()函数是C#程序的入口,起始线程可以称之为主线程,如果所有的前台线程都停止了,那么主线程可以终止,而所有的后台线程都将无条件终止。而所有的线程虽然在微观上是串行执行的,但是在宏观上你完全可以认为它们在并行执行。阅读全文>
发表于 @ 2008年01月24日 00:06:00|评论(loading...)|编辑
下面我们就动手来创建一个线程,使用Thread类创建线程时,只需提供线程入口即可。线程入口使程序知道该让这个线程干什么事,在C#中,线程入口是通过ThreadStart代理(delegate)来提供的,你可以把ThreadStart理解为一个函数指针,指向线程要执行的函数,当调用Thread.Start()方法后,线程就开始执行ThreadStart所代表或者说指向的函数。 阅读全文>
发表于 @ 2008年01月24日 00:04:00|评论(loading...)|编辑
一.多线程的概念
Windows是一个多任务的系统,如果你使用的是windows 2000及其以上版本,你可以通过任务管理器查看当前系统运行的程序和进程。什么是进程呢?当一个程序开始运行时,它就是一个进程,进程所指包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的,线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即不同的线程可以执行同样的函数。多线程是指程序中包含多个执行流,即在一个程序中可以同时运行多个不同的线程来执行不同的任务,也就是说允许单个程序创建多个并行执行的线程来完成各自的任务。浏览器就是一个很好的多线程的例子,在浏览器中你可以在下载JAVA小应用程序或图象的同时滚动页面,在访问新页面时,播放动画和声音,打印文件等。
阅读全文>
发表于 @ 2008年01月24日 00:01:00|评论(loading...)|编辑
MSF,即Microsoft Solution Framework,也就是微软公司推荐做软件的方法。在2006年,伴随着Visual Studio Team Foundation 2005的发布,MSF4.0也推出了。其中描述了团队协作的典型流程和在软件上的应用,软件自然就是VSTF了。阅读全文>
发表于 @ 2008年01月22日 16:18:00|评论(loading...)|编辑
从前有这样的一个爱情故事,故事的主角是两个傻瓜。男的好傻,傻的只知道说疯话,女的 也好傻,傻的只知道用那双无神的眼睛看着男的,笑,傻笑。 阅读全文>
发表于 @ 2008年01月22日 13:17:00|评论(loading...)|编辑
一直对数据库的优化一窍不通,大家谈论最多应该是怎样从 SQL 查询语句和索引下手去优化。对于索引,很多高手都写过很多文章,看来看去也没悟出什么东西,不过,今天我修改了数据表的几个主键(可以认为就是聚焦索引)并且添加了一些非聚焦索引,SQLServer 的性能立刻提高了上去。对于 Users 表,原先是把主键设置为 UserID(自增字段)字段上,通过事件跟踪器,发现对于 Users 表的查询比较耗... 阅读全文>
发表于 @ 2008年01月22日 12:40:00|评论(loading...)|编辑
由于存在一下几种特点:1、.NET程序反编译容易,而使用一些混淆工具会导致有些程序不能运行2、VB6开发ActiveX控件,那叫一个快,VB代码也不是很容易被反编译。3、结合两者的特点,如果在.NET中使用了封装一些关键代码的ActiveX控件,那么程序的安全性是否好一点呢?对于这种做法,请大家拍砖讨论,本人提供一个如何实现这种做法的思路。阅读全文>
发表于 @ 2008年01月22日 12:37:00|评论(loading...)|编辑
asp.net框架 asp时代已经过去,web2.0的时代已经来临。asp.net2.0经过MS高度封装,在vs.net下的开发已经完全是傻瓜式的了,但我不愿只做个coding man。 在以往的asp时代,当请求一个*.asp文件的时候,这个请求首先被一个名为inetinfo.exe进程截获,打开任务管理器,发现inetinfo.... 阅读全文>
发表于 @ 2008年01月22日 12:35:00|评论(loading...)|编辑