摘要:
在C#中使用线程的方法很多,使用委托的BeginInvoke和EndInvoke方法就是其中之一。BeginInvoke方法可以使用线程异步地执行委托所指向的方法。然后通过EndInvoke方法获得方法的返回值(EndInvoke方法的返回值就是被调用方法的返回值),或是确定方法已经被成功调用。我们可以通过四种方法从EndInvoke方法来获得返回值。下面写了例子 再细说代码Code highli... 阅读全文
摘要:
如何控制好多个线程相互之间的联系,不产生冲突和重复,这需要用到互斥对象,即:System.Threading 命名空间中的 Mutex 类。 我们可以把Mutex看作一个出租车,乘客看作线程。乘客首先等车,然后上车,最后下车。当一个乘客在 车上时,其他乘客就只有等他下车以后才可以上车。而线程与Mutex对象的关系也正是如此,线程使用Mutex.WaitOne()方法等待Mutex对 象被释放,如果... 阅读全文
摘要:
Timer类:设置一个定时器,定时执行用户指定的函数。 定时器启动后,系统将自动建立一个新的线程,执行用户指定的函数。 初始化一个Timer对象: Timer timer = new Timer(timerDelegate, s,1000, 1000); // 第一个参数:指定了TimerCallback 委托,表示要执行的方法; // 第二个参数:一个包含回调方法要使用的信息的对象,或者为空... 阅读全文
摘要:
在多线程的程序中,经常会出现两种情况:一种情况: 应用程序中,线程把大部分的时间花费在等待状态,等待某个事件发生,然后才能给予响应 这一般使用ThreadPool(线程池)来解决;另一种情况:线程平时都处于休眠状态,只是周期性地被唤醒 这一般使用Timer(定时器)来解决;ThreadPool类提供一个由系统维护的线程池(可以看作一个线程的容器),该容器需要 Windows 2000 以上系统... 阅读全文
摘要:
Thread类有几个至关重要的方法,描述如下: Start():启动线程; Sleep(int):静态方法,暂停当前线程指定的毫秒数; Abort():通常使用该方法来终止一个线程; Suspend():该方法并不终止未完成的线程,它仅仅挂起线程,以后还可恢复; Resume():恢复被Suspend()方法挂起的线程的执行; Join():使主线程等待,直到子线程结束。Thread.Thre... 阅读全文
摘要:
前面的通用类写好了 下面通过不同的方式调用测试一下代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--MysqlHelpmh=newMysqlHelp();//清空数据mh.Runsql("deletefromt_user");//sql的方式添加My... 阅读全文
摘要:
asp.net连接mysql数据库有很多方式 这里找了比较简单的一种。接着前面的数据库。先下载一个 MySql.Data.dll 自己写一个通用类基本上和MSSQL一样[代码] 阅读全文
摘要:
涉及到数据库不用存储过程肯定是不行的 下面简单写2个存储过程 接着前面的数据库1 不带输出参数的 (添加用户)[代码]注意几点:变量不需要加@ 存储过程名字后面的“()”是必须的,即使没有一个参数,也需要“()”不用加as关键字 存储过程中包含多条 MySQL 语句,则需要 begin end 关键字。存储过程中的每条语句的末尾,都要加上分号 ... 阅读全文
摘要:
[代码]注意:如果要让自动增长列自动递增就必须指定其他列名insertintoT_Uservalues('admin','123','管理员1')这样就会添加失败。用--可以注释代码 但是必须后面加一个空格 不然会报错 也可以用/**/ 阅读全文
摘要:
没弄过第一次搞 做个记录先到http://www.mysql.cn/下载一个mysql我下的是 mysql-5.0.22-win32.zip(确实很小)直接安装很简单 编码可以然后在下载一个客户端的工具相当于mssql的查询分析器 NaviCat基本上就可以用了,安装的时候会指定数据存放的路径。当然后面也可以修改1,修改C:\Program Files\MySQL\MySQL Server 5.0... 阅读全文