美文网首页.NET.NET线程
零基础学.NET电脑编程-多线程讲解 多线程软件设计 程序员

零基础学.NET电脑编程-多线程讲解 多线程软件设计 程序员

作者: 做全栈攻城狮 | 来源:发表于2016-12-24 12:32 被阅读293次

    写代码也要读书,爱全栈,更爱生活。每日更新原创IT编程技术及日常实用视频。

    我们的目标是:玩得转服务器Web开发,搞得懂移动端,电脑客户端更是不在话下。

    多线条

    开篇

    本文章属于C#零基础入门的教程。主要介绍多线程及利用多线程制作摇奖机软件

    建议按照文章项目进行实战,多写代码,多练习。

    这是小白学习软件开发系列课程,旨在帮助对电脑编程感兴趣的朋友学习并熟悉电脑编程软件开发C#技术。达到程序员的级别,可以进入公司进行软件编程开发。总目录:http://www.jianshu.com/p/d1add12a197e。

    上一课链接:零基础学.NET电脑编程-线程 进程 多线程讲解 程序员必备

    多线程

    承接上篇文章,主要介绍了进程以及线程的一些基础要点。线程可能没有着重介绍。本文章着重介绍线程及多线程

    线程可以理解为进程内部执行任务的一个小程序。每个进程有很多线程用来处理不同的事务。所有的线程以及其他资源组成了进程。

    那这样看来,多线程就很容易理解了,多线程,其实就是在一个进程中同时运行不同的多个线程。

    例如:我电脑正在运行的360极速浏览器含有多个线程在执行任务:

    360极速浏览器的多个线程

    一个线程感觉就完全的够用了,那为何还要多线程呢?

    单线程的问题

    创建Winform应用程序项目,在界面添加按钮,实现不断更换按钮的内容:

    不断更换内容

    循环改变内容

    我们感觉效果应该是按钮的内容不断的进行变化直到100000.但是:

    运行效果

    点击按钮之后,发现界面出现假死,不管如何拖动,界面都不动。等待一段时间之后。按钮内容变成了99999。

    分析原因:

    我们写的项目程序,默认是单线程的,也就是只有UI线程。用来进行界面绘制等作用。当进行长时间的循环操作时,就造成了UI线程被占用的问题。所以会导致界面卡死现象。等待循环执行完毕,则UI线程空闲可以进行界面的绘制了。

    使用多线程

    这时候就需要用到多线程技术了。我们一般把这种耗时的操作放入新的独立的线程中进行执行。

    创建多线程:

    多线程执行耗时操作

    同时,在不同的线程之间是不能跨线程操作控件的。所以:

    跨线程访问控件

    这里我们先禁止掉对跨线程控件使用的检测,下篇讲解,多线程访问控件:

    禁止跨线程访问控件的检测

    此时,运行:

    多线程访问

    线程传递参数

    实现在UI线程传递开始的数值,实现在这个数值开始改变按钮内容:

    带参数的多线程任务

    未完待续..每日更新,请关注哦~

    END.

    我是成傲天。

    生活在不出名的本科院校,白天是学生族,晚上是程序员和知识服务工作者。

    读完我的文章如果有收获,记得打赏、关注和点赞哦!

    相关文章

      网友评论

      本文标题:零基础学.NET电脑编程-多线程讲解 多线程软件设计 程序员

      本文链接:https://www.haomeiwen.com/subject/ujblvttx.html