成都网站建设设计

将想法与焦点和您一起共享

vb.net线程定义 C#定义线程

你好,是只有VB.NET能多线程,还是所有VB都能实现多线程?

简单回答:

北辰ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

1、当前来说,编程与运行环境合适的情况下,VB.net与VB都有实现多线程的可能。

2、VB、VB.net的最基本的概念,是调用系统的接口进行编程,只要系统提供“多线程”的功能调用,它们就能实现多线程。

3、VB注意于面向用户,面向任务,其高级的一些程序实现需要直接调用win的API,VB实现多线程的例子也可以在网络上搜索到。

一、关于VB、VB.net的相关知识:

1、编程指的是用人类能理解的语言来编写指令集,并通过专用的编译软件或环境来转化这些指令,使得这些指令能让计算机识别,从而控制计算机做人类需要进行的工作。

2、也就是说无论是VB.NET还是VB它们都只是“人类能理解的语言”,它们通过专用的编译软件或环境来转化这些指令,进而操作电脑。

3、进一步特化到VB上去说。VB基于VB的运行库,它的运行库又基于win的API((Application Programming Interface,应用程序编程接口)是一些预先定义的函数),也就是说,VB的很多(多到90%以上)的功能是直接基于调用windows提供的一些基本接口函数。

4、VB.net有什么不同呢,它基于.net运行库。什么 意思?这个意思就是,微软发现win的API不够用了,不好用了,就打算在windows上加装点东西,让它有更多的接口函数。但要注意的是,多数情况下,这些接口比win的API的效率要低一些。在win7及以后的版本的win中,已经自含了.net运行库。

5、顺便说,为什么很多人会发现win7的运行速度看起来要比xp慢呢,个人认为就是因为调用的是.net的接口来实现的,.net就是比API的慢。当然了,.net的功能上要比xp原有的API的功能强。

6、VB与VB.net在语法上是非常近似的,只是因为Visual Studio的版本不同,后期的Visual Studio已不提供简纯的VB了,注意它们的不同主要是后台核心调用的理念上的不同。

VB.net 中创建线程时,线程所要执行的 任务函数 怎么实现后期定义(就像回调函数一样的)?

这个线程对象一定有个完成时或者进行中的动作,你可以用AddHandler语句来将过程委托给ProcessChanged或者ProcessConpleted动作。

VB.NET多线程变量问题

你需要定义一个公共变量模块,来存储线程类里面的变量。这样在线程结束后变量值都存在模块变量里面了。当再次开启线程再把数据赋给类里面。

vb.net里如何设置多线程?

首先,你把你那些要运行很久的过程。尽量放在一个过程中。

因为线程只能是过程,不能使函数,没有返回值的。

然后,在某个事件下这样写:

**这里我假设你的那个很就的过程叫做 sub aaa()

调用如下:

Dim mythread As New System.Threading.Thread(AddressOf aaa)

mythread.Start()

***********

这样就是定义一个线程,名字叫 mythread,这个线程会运行aaa这个过程。

start 就是让线程运行。

VB.net 主线程和新增线程不同时运行怎么办

多线程就是这样的。界面线程是主线程,你这个Form_Load就是运行在主线程上的线程,而Thread1,Thread2是由主线程启动的。这个启动不是线性的。

主线程只是通知系统,请启动一个线程运行某某函数。

而哪个线程先运行完全在系统决定。甚至可能主线程执行到Thread1.Abort() ,Thread2.Abort()的时候这两个线程都还没有启动起来,所以你会遇到两个变量都是空值这种情况。

VB.NET多线程程序问题

在多线程中你需要定义委托来修改控件属性

比如你修改Textbox属性,则:

Delegate Sub dl_ShowTextbox(ByVal iStr As String)

Public Sub ShowTextbox(ByVal iStr As String)

If Textbox.IsDisposed Then

Return

End If

If Textbox.InvokeRequired = True Then

Dim pInvoke As New dl_ShowTextbox(AddressOf ShowTextbox)

Me.Invoke(pInvoke, New Object() {iStr})

Else

Textbox.Text = iStr

End If

End Sub

在多线程中调用

ShowTextbox( "要显示的内容" )


当前标题:vb.net线程定义 C#定义线程
文章转载:http://chengdu.cdxwcx.cn/article/hhsiog.html