1.Thread线程

以下内容全部来自于B站老杨- https://space.bilibili.com/361469957/video 这里作为学习笔记记录。

线程的概念:

 单线程应用:

多线程应用:

 这幅图展示了四种程序状态:

用WPF的例子解释为什么需要多线程:

如果在UI界面的主线程读数据,那么耗时10s的读数据就会使得UI界面假死,造成不好的用户体验;

所以正确的做法应该是再开辟一个新的线程去读取数据,UI线程该干嘛干嘛,读取数据10s后再将数据交回到UI主线程。

这个数据就被称作是共享的状态。

开辟新线程的示例代码:

 

输出结果:

为什么会有这样的结果?原理解释:

分单核和多核计算机解释:

 下图解释这个例子,在主线程Main thread中开辟了一个新的线程Worker thread然后主线程输出x,新线程中输出y

 

 因此这就是为什么我们在控制台看到输出x的字符块和y的字符块。

一些线程中术语的解释:

线程的一些属性:

常用属性IsAlive

例子:

 执行结果:

原文地址:https://www.cnblogs.com/LeeSki/p/14301401.html