苏飞论坛
标题: C#多线程详解视频 [打印本页]
作者: ro4ters 时间: 2014-10-24 23:24
标题: C#多线程详解视频
本视频从最简单的写法到高级写法逐步讲解多线程类的使用..
以及增加平时使用到引发的错误,及使用场景进行详细的讲解多线程的应用
最简单的线程的声明
[C#] 纯文本查看 复制代码
Thread th = new Thread(Func); //创建线程
th.Start();//启动线程
private void Func()//线程执行的方法
{
}
学习线程最经典的错误
线程间操作无效: 从不是创建控件“label1”的线程访问它。
小型项目如何解决跨线程访问异常:
Control.CheckForIllegalCrossThreadCalls = false;//忽略跨线程间的调用.不推荐大家使用.它可能会引发一些未知的异常.
创建窗口句柄时出错。
引发原因: 窗体被结束,但是线程还未结束
前后台线程的区别
th.IsBackground = true;//当前线程为后台线程
后台线程和前台线程
引发一个错误: 当窗体关闭,方法内没有调用窗体控件时.虽然看着窗体已经结束,但是任务管理器中一样可以看见进程依然在运行.
原因: 启用前台线程,但是UI关闭后,没有通知前台线程结束,主线程并未完全退出.因为只要有一条子线程还在运行,那么它(子线程)将阻塞主线程关闭.
窗体关闭前台线程依然会继续运行.后台线程则不会.
线程的销毁时间
传递非object类型的写法
[C#] 纯文本查看 复制代码
Thread th = new Thread(new ThreadStart(delegate {
GetInfo(strinfo);
}));
th.Start();
ThreadPool 线程池.
ThreadPool.QueueUserWorkItem(new WaitCallback(delegate {
GetInfo(strinfo);
}));
线程池是不可控制的.
Thread.Sleep(100); //睡眠,挂起. 参数(int)单位毫秒 是全局有效.!
全局说的是主线程.
th.Suspend(); //挂起线程
th.Resume(); //继续挂起的线程
ThreadState //线程的状态枚举
应用场景
Post程序,
需要输入验证码
先开启线程,来执行get请求.得到验证码图像,挂起这个线程.等待验证码的输入.
lock (this) //锁
{
}
固定任务数.不固定线程数.自己计算需要多少线程
现在这个类的好处: 帮助你理解其他人是如何处理线程的.
两种情况 固定线程数,不固定任务数
固定任务数,自动计算线程数
缺点: 无法重复利用线程.
作者: cload 时间: 2014-10-25 00:33
膜拜中....!
作者: 我勒个擦 时间: 2014-10-25 07:31
谢谢楼主,昨天还在看你的帖子呢。没想到这就更新了
作者: becklee 时间: 2014-10-25 08:40
不错的帖子。谢谢楼主分享
作者: 水手 时间: 2014-10-25 09:16
强烈支持楼主ing……
作者: Cheungnotes 时间: 2014-10-25 10:02
看过帖子回复一下是个好习惯
作者: ching126 时间: 2014-10-25 21:09
我只是路过打酱油的。
作者: Eagle 时间: 2014-10-31 17:51
强烈支持楼主ing……
作者: 小青草 时间: 2014-11-4 09:25
正准备研究多线程,正好用上,谢楼主了
作者: ro4ters 时间: 2014-11-4 09:49
委托也有视频教程的.
http://www.sufeinet.com/thread-10398-1-1.html 欢迎持续关注
作者: qq6227575 时间: 2014-12-11 14:55
强烈支持楼主ing……
作者: kpjack 时间: 2015-2-10 15:49
强烈支持楼主ing……
作者: barretq 时间: 2015-8-3 00:55
谢谢楼主,


作者: nealin 时间: 2015-8-20 23:18
非常给力!
作者: shenxiao16 时间: 2016-2-27 11:16
感谢您的无私奉献,真是帮了我的大忙了 
作者: happy123 时间: 2016-12-19 16:04
链接已经失效了,麻烦楼主更新下,谢谢。
作者: h6435749 时间: 2019-6-2 17:23
链接失效了,能不能再分享一次
作者: 50266637 时间: 2021-3-9 10:39
链接过期啦,是否能分享新链接?
欢迎光临 苏飞论坛 (http://www.sufeinet.com/) |
Powered by Discuz! X3.4 |