多线程程序的特点
每一个进程中,可以包含多个线程,加入收藏 按照微软官方文档的说明,在 Windows XP 中每个进程可以包含最多 2000 个线程。实际上,线程的数量是要受到内存的限制的,当然,并不是说线程越多越好。假设,现在系统中有两个进程在运行,进程A 仅有一个线程,即主线程,而进程B 有5 个线程,那么当前系统中的线程数,共有 6 个,操作系统会为每个线程分配时间片,这样进程A 获取到的时间片仅为 1/6,而进程B 获取到的时间片为 5/6,所以进程B 的执行就会影响到系统的整体运行,因此在线程数不能太多,要符合程序本身的要求。线程有以下几个特点:
1. 分配给线程的时间不会得到保证
2. 线程的激活顺序没有保证
3. 不能认为发生在不同线程上的事件或操作是同步的,如果要想同步,那么必须进行显式的同步操作。
下面,我们通过一个例子来理解线程的上述三个特点:
Imports System.Threading
Module MyThread
Sub Main()
Dim thA As New Thread(New ThreadStart(AddressOf M1))
Dim thB As New Thread(AddressOf M2)
thB.Start()
thA.Start()
Console.Read()
End Sub
Public Sub M1()
Dim intCount As Integer
For intCount=1 To 100
Console.WriteLine("M1 方法正在执行 {0}...",intCount)
Next
End Sub
Public Sub M2()
Dim intCount As Integer
For intCount=1 To 100
Console.WriteLine("M2 方法正在执行 {0}...",intCount)
Next
End Sub
End Module
程序编译执行的结果如图(每次执行结果都会有变化):
我们可以看到,M1 方法和 M2 方法执行的顺序是随机的,它不受程序控制,由操作系统的特征决定(时间片的分配方式),有些时候,这个结果并不是我们想要的,那么,如果才能灵活地控制线程的启动与执行呢?在下一节中,我们将会解决这一问题——封装线程。
本文来自 280文秘网(https://www.it280.com),转载请保留网址和出处
【VB.NET中多线程程序开发之多线程的特点】相关文章:
2025年外省高中学业水平合格性考试成绩转入江苏认定的通告公布03-23
Vb中控件的自动排列03-23
写未来的作文300字03-23
Our Mother Is the Same 我们的妈妈是一样的03-23
中国大地保险公司实习报告03-23
小学父爱的作文600字03-23
2018国家电网新大纲财会类市场模拟卷多选题(二)03-23
07年4月北师大“中国古代文学史(一)”串讲(5)03-23
汪涵讲述小时候成长经历:鸡毛掸子的故事03-23
2023年广东梅州中考成绩查询时间及查分入口[7月7日起]03-23
关于清明节的英语作文:清明节03-23
