信息发布软件,b2b软件,广告发布软件

 找回密码
 立即注册
搜索
查看: 2155|回复: 21
打印 上一主题 下一主题

[『VB.NET 图文教程』] VB.NET多线程应用和实例图文教程

  [复制链接]

565

主题

649

帖子

4228

积分

积分
4228
跳转到指定楼层
宣传软件楼主
发表于 2016-11-5 14:05:43 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

软件教程首图:

软件教程分类:VB.NET 图文教程 

软件图文教程视频教程分类:软件图文教程 

软件教程难易程度:软件初级教程 

软件教程发布日期:2016-11-05

软件教程关键字:

① 本信息收集于网络,如有不对的地方欢迎联系我纠正!
② 本信息免费收录,不存在价格的问题!
③ 如果您的网站也想这样出现在这里,请您加好友情链接,我当天会审核通过!

④友情链接关键字:软件定制网站 网址:http://www.postbbs.com

软件教程详细描述

 开发者一直要求微软为VB加入更多的多线程功能,对于VB.NET也是这样。VB6已经支持建立多线程的EXE、DLL和OCX。不过使用多线程这个词语,可能也不太确切。因此VB6仅支持运行多个单线程的单元。一个单元实际上是代码执行的空间,而单元的边界限制了代码访问任何单元以外的事物。

  VB.NET就不同了,它支持建立自由线程(free-threaded)的应用。这意味着多个线程可以访问同样一套的共享数据。本文的以下部分将讨论一下多线程的一些基本点。

问题

  虽然VB6支持多个单线程的单元,不过它并不支持一个自由线程的模型,即不允许多个线程使用同一套数据。在许多的情况下,你需要建立一个新的线程来进行后台的处理,这样可提高应用的可用性,否则,一个长的处理就可以令程序的响应变得很慢,例如你按下表格上的一个取消按钮,却很久都没有响应。

  解决办法

  由于VB.NET使用了CLR(Common Language Runtime),从而拥有了许多的新特性,其中的一个是可以创建自由线程的应用。

  使用线程

  在VB.NET中,运用线程是很简单的。我们将在后面涉及其中的细节,现在我们首先来创建一个简单的表格,它使用一个新的线程来运行一个后台处理。第一件要做的事情是创建运行在新线程上的后台任务。以下的代码执行一个相当长的运行处理--一个无限的循环:

  Private Sub BackgroundProcess()

  Dim i As Integer = 1

  Do While True

  ListBox1.Items.Add("Iterations: " + i)

  i += 1

  Loop

  End Sub

  这段代码无限地循环,并且在每次执行时为表格上的一个列表框加入一个项目。如果你对VB.NET不熟悉的话,你将会发现这段代码和VB6的有一些区别:

  . 在声明变量Dim i As Integer = 1时赋值

  . 使用+=操作符i += 1代替i = i + 1

  . 没有使用Call关键字

  一旦我们拥有了一个工作的处理,我们就需要将这段代码分配给一个线程处理,并且启动它。为此我们要使用线程对象(Thread object),它是.NET架构类中System.Threading命名空间的一部分。在实例化一个新的线程类时,我们将要在线程类构造器执行的代码块的一个引用传送给它。以下的代码创建一个新的线程对象,并且将BackgroundProcess的一个引用传送给它:

  Dim t As Thread

  t = New Thread(AddressOf Me.BackgroundProcess)

  t.Start()

  AddressOf操作符创建了一个到BackgroundProcess方法的委派对象。在VB.NET中,一个委派是一个类型安全、面向对象的函数指针。在实例化该线程后,你可以通过调用线程的Start()方法来开始执行代码。

  控制线程

  在线程启动后,你可以通过线程对象的一个方法来控制它的状态。你可以通过调用Thread.Sleep方法来暂停一个线程的执行,这个方法可以接收一个整型值,用来决定线程休眠的时间。拿前面的例子来说,如果你想让列表项目增加的速度变慢,可以在其中放入一个sleep方法的调用:

  Private Sub BackgroundProcess()

  Dim i As Integer = 1

  Do While True

  ListBox1.Items.Add("Iterations: " + i)

  i += 1

  Thread.CurrentThread.Sleep(2000)

  Loop

  End Sub

  CurrentThread是一个public static的属性值,可让你得到当前运行线程的一个引用。

  你还可以通过调用Thread.Sleep (System.Threading.Timeout.Infinite)来让线程进入休眠状态,有点特别的是,这个调用的休眠时间是不确定的。要中断这个休眠,你可以调用Thread.Interrupt方法。

  与休眠和中断类似的是挂起和恢复。挂起可让你暂停一个线程,直到另一个线程调用Thread.Resume为止。休眠和挂起的区别是,后者并不立刻让线程进入一个等待的状态,线程并不会挂起,直到.NET runtime认为现在已经是一个安全的地方来挂起它了,而休眠则会立刻让线程进入一个等待的状态。

  最后要介绍的是Thread.Abort,它会停止一个线程的执行。在我们的那个简单例子中,如果要加入一个按钮来停止处理,很简单,我们只要调用Thread.Abort方法就行了,如下所示:

  Private Sub Button2_Click(ByVal sender As System.Object, _

  ByVal e As System.EventArgs) Handles Button2.Click

  t.Abort()

  End Sub

  这就是多线程的强大之处。用户界面的响应很好,因为它运行在一个单独的线程中,而后台的处理运行在另外一个线程中。在用户按下取消按钮时,便会马上得到响应,并且停止处理。

  上面的例子只是一个相当简单的应用。在编程时,你还需要使用到多线程的许多复杂特性。其中的一个问题是如何将程序的数据由线程类的构造器传入或者传出,也就是说,对于放到另外一个线程中的过程,你既不能传参数给它,也不能由它返回值。这是由于你传入到线程构造器的过程是不能拥有任何的参数或者返回值的。为了解决这个问题,可以将你的过程封装到一个类中,这样方法的参数就可使用类中的字段。

  这里我们举一个简单的例子,如果我们要计算一个数的平方,即:

  Function Square(ByVal Value As Double) As Double

  Return Value * Value

  End Function

  为了在一个新的线程中使用这个过程,我们将它封装到一个类中:

  Public Class SquareClass

  Public Value As Double

  Public Square As Double

  Public Sub CalcSquare()

  Square = Value * Value

  End Sub

  End Class

  使用这些代码来在一个新的线程上启动CalcSquare过程,如下所示:

  Private Sub Button1_Click(ByVal sender As System.Object, _

  ByVal e As System.EventArgs) Handles Button1.Click

  Dim oSquare As New SquareClass()

  t = New Thread(AddressOf oSquare.CalcSquare)

  oSquare.Value = 30

  t.Start()

  End Sub

  要注意到,在线程启动后,我们并没有检查类中的square值,因为即使你调用了线程的start方法,也不能确保其中的方法马上执行完。要从另一个线程中得到值,有几个方法,这里使用的方法是最简单的,即是在线程完成的时候触发一个事件。我们将在后面的线程同步中讨论另一个方法。以下的代码为SquareClass加入了事件声明。

  Public Class SquareClass

  Public Value As Double

  Public Square As Double

  Public Event ThreadComplete(ByVal Square As Double)

  Public Sub CalcSquare()

  Square = Value * Value

  RaiseEvent ThreadComplete(Square)

  End Sub

  End Class

  在调用代码中捕捉事件的方法和VB6差不多,你仍然要声明WithEvents变量,并且在一个过程中处理事件。有些不同的是,你声明处理事件的过程使用的是Handles关键字,而不是通过VB6中通常使用的Object_Event。

  Dim WithEvents oSquare As SquareClass

  Private Sub Button1_Click(ByVal sender As System.Object, _

  ByVal e As System.EventArgs) Handles Button1.Click

  oSquare = New SquareClass()

  t = New Thread(AddressOf oSquare.CalcSquare)

  oSquare.Value = 30

  t.Start()

  End Sub

  Sub SquareEventHandler(ByVal Square As Double) _

  Handles oSquare.ThreadComplete

  MsgBox("The square is " & Square)

  End Sub

  对于这种方法,要注意的是处理事件的过程,在这个例子中的是SquareEventHandler,将运行在产生该事件的线程中。它并不是运行在表格执行的线程中。

  同步线程

  在线程的同步方面,VB.NET提供了几个方法。在上面的平方例子中,你要与执行计算的线程同步,以便等待它执行完并且得到结果。另一个例子是,如果你在其它线程中排序一个数组,那么在使用该数组前,你必须等待该处理完成。为了进行这些同步,VB.NET提供了SyncLock声明和Thread.Join方法。

  SyncLock可得到一个对象引用的唯一锁,只要将该对象传送给SyncLock就行了。通过得到这个唯一锁,你可以确保多个线程不会访问共享的数据或者在多个线程上执行的代码。要得到一个锁,可使用一个较为便利的对象--与每个类关联的System.Type对象。System.Type对象可通过使用GetType方法得到:

  Public Sub CalcSquare()

  SyncLock GetType(SquareClass)

  Square = Value * Value

  End SyncLock

  End Sub

  另一个是Thread.Join方法,它可让你等待一个特定的时间,直到一个线程完成。如果该线程在你指定的时间前完成了,Thread.Join将返回True,否则它返回False。在平方的例子中,如果你不想使用触发事件的方法,你可以调用Thread.Join的方法来决定计算是否完成了。代码如下所示:

  Private Sub Button1_Click(ByVal sender As System.Object, _

  ByVal e As System.EventArgs) Handles Button1.Click

  Dim oSquare As New SquareClass()

  t = New Thread(AddressOf oSquare.CalcSquare)

  oSquare.Value = 30

  t.Start()

  If t.Join(500) Then

  MsgBox(oSquare.Square)

  End If

  End Sub

  对于这种方法,要注意的是处理事件的过程,在这个例子中的是SquareEventHandler,将运行在产生该事件的线程中。它并不是运行在表格执行的线程中。


unto今题网B2B网站信息发布软件全自动群发贴软件脚本next中华企业录B2B网站网络宣传软件信息全自动发帖软件脚本
回复

使用道具 举报

565

主题

649

帖子

4228

积分

积分
4228
信息发布软件沙发
 楼主| 发表于 2016-11-5 14:08:10 | 只看该作者

开发者一直要求微软为VB加入更多的多线程功能,对于VB.NET也是这样。VB6已经支持建立多线程的EXE、DLL和OCX。不过使用多线程这个词语,可能也不太确切。因此VB6仅支持运行多个单线程的单元。一个单元实际上是代码执行的空间,而单元的边界限制了代码访问任何单元以外的事物。

  VB.NET就不同了,它支持建立自由线程(free-threaded)的应用。这意味着多个线程可以访问同样一套的共享数据。本文的以下部分将讨论一下多线程的一些基本点。

  问题

  虽然VB6支持多个单线程的单元,不过它并不支持一个自由线程的模型,即不允许多个线程使用同一套数据。在许多的情况下,你需要建立一个新的线程来进行后台的处理,这样可提高应用的可用性,否则,一个长的处理就可以令程序的响应变得很慢,例如你按下表格上的一个取消按钮,却很久都没有响应。

  解决办法

  由于VB.NET使用了CLR(Common Language Runtime),从而拥有了许多的新特性,其中的一个是可以创建自由线程的应用。

  使用线程

  在VB.NET中,运用线程是很简单的。我们将在后面涉及其中的细节,现在我们首先来创建一个简单的表格,它使用一个新的线程来运行一个后台处理。第一件要做的事情是创建运行在新线程上的后台任务。以下的代码执行一个相当长的运行处理--一个无限的循环:

  Private Sub BackgroundProcess()

  Dim i As Integer = 1

  Do While True

  ListBox1.Items.Add("Iterations: " + i)

  i += 1

  Loop

  End Sub

  这段代码无限地循环,并且在每次执行时为表格上的一个列表框加入一个项目。如果你对VB.NET不熟悉的话,你将会发现这段代码和VB6的有一些区别:

  . 在声明变量Dim i As Integer = 1时赋值

  . 使用+=操作符i += 1代替i = i + 1

  . 没有使用Call关键字

  一旦我们拥有了一个工作的处理,我们就需要将这段代码分配给一个线程处理,并且启动它。为此我们要使用线程对象(Thread object),它是.NET架构类中System.Threading命名空间的一部分。在实例化一个新的线程类时,我们将要在线程类构造器执行的代码块的一个引用传送给它。以下的代码创建一个新的线程对象,并且将BackgroundProcess的一个引用传送给它:

  Dim t As Thread

  t = New Thread(AddressOf Me.BackgroundProcess)

  t.Start()

  AddressOf操作符创建了一个到BackgroundProcess方法的委派对象。在VB.NET中,一个委派是一个类型安全、面向对象的函数指针。在实例化该线程后,你可以通过调用线程的Start()方法来开始执行代码。

  控制线程

  在线程启动后,你可以通过线程对象的一个方法来控制它的状态。你可以通过调用Thread.Sleep方法来暂停一个线程的执行,这个方法可以接收一个整型值,用来决定线程休眠的时间。拿前面的例子来说,如果你想让列表项目增加的速度变慢,可以在其中放入一个sleep方法的调用:

  Private Sub BackgroundProcess()

  Dim i As Integer = 1

  Do While True

  ListBox1.Items.Add("Iterations: " + i)

  i += 1

  Thread.CurrentThread.Sleep(2000)

  Loop

  End Sub

  CurrentThread是一个public static的属性值,可让你得到当前运行线程的一个引用。

  你还可以通过调用Thread.Sleep (System.Threading.Timeout.Infinite)来让线程进入休眠状态,有点特别的是,这个调用的休眠时间是不确定的。要中断这个休眠,你可以调用Thread.Interrupt方法。

  与休眠和中断类似的是挂起和恢复。挂起可让你暂停一个线程,直到另一个线程调用Thread.Resume为止。休眠和挂起的区别是,后者并不立刻让线程进入一个等待的状态,线程并不会挂起,直到.NET runtime认为现在已经是一个安全的地方来挂起它了,而休眠则会立刻让线程进入一个等待的状态。

  最后要介绍的是Thread.Abort,它会停止一个线程的执行。在我们的那个简单例子中,如果要加入一个按钮来停止处理,很简单,我们只要调用Thread.Abort方法就行了,如下所示:

  Private Sub Button2_Click(ByVal sender As System.Object, _

  ByVal e As System.EventArgs) Handles Button2.Click

  t.Abort()

  End Sub

  这就是多线程的强大之处。用户界面的响应很好,因为它运行在一个单独的线程中,而后台的处理运行在另外一个线程中。在用户按下取消按钮时,便会马上得到响应,并且停止处理。

  上面的例子只是一个相当简单的应用。在编程时,你还需要使用到多线程的许多复杂特性。其中的一个问题是如何将程序的数据由线程类的构造器传入或者传出,也就是说,对于放到另外一个线程中的过程,你既不能传参数给它,也不能由它返回值。这是由于你传入到线程构造器的过程是不能拥有任何的参数或者返回值的。为了解决这个问题,可以将你的过程封装到一个类中,这样方法的参数就可使用类中的字段。

  这里我们举一个简单的例子,如果我们要计算一个数的平方,即:

  Function Square(ByVal Value As Double) As Double

  Return Value * Value

  End Function

  为了在一个新的线程中使用这个过程,我们将它封装到一个类中:

  Public Class SquareClass

  Public Value As Double

  Public Square As Double

  Public Sub CalcSquare()

  Square = Value * Value

  End Sub

  End Class

  使用这些代码来在一个新的线程上启动CalcSquare过程,如下所示:

  Private Sub Button1_Click(ByVal sender As System.Object, _

  ByVal e As System.EventArgs) Handles Button1.Click

  Dim oSquare As New SquareClass()

  t = New Thread(AddressOf oSquare.CalcSquare)

  oSquare.Value = 30

  t.Start()

  End Sub

  要注意到,在线程启动后,我们并没有检查类中的square值,因为即使你调用了线程的start方法,也不能确保其中的方法马上执行完。要从另一个线程中得到值,有几个方法,这里使用的方法是最简单的,即是在线程完成的时候触发一个事件。我们将在后面的线程同步中讨论另一个方法。以下的代码为SquareClass加入了事件声明。

  Public Class SquareClass

  Public Value As Double

  Public Square As Double

  Public Event ThreadComplete(ByVal Square As Double)

  Public Sub CalcSquare()

  Square = Value * Value

  RaiseEvent ThreadComplete(Square)

  End Sub

  End Class

  在调用代码中捕捉事件的方法和VB6差不多,你仍然要声明WithEvents变量,并且在一个过程中处理事件。有些不同的是,你声明处理事件的过程使用的是Handles关键字,而不是通过VB6中通常使用的Object_Event。

  Dim WithEvents oSquare As SquareClass

  Private Sub Button1_Click(ByVal sender As System.Object, _

  ByVal e As System.EventArgs) Handles Button1.Click

  oSquare = New SquareClass()

  t = New Thread(AddressOf oSquare.CalcSquare)

  oSquare.Value = 30

  t.Start()

  End Sub

  Sub SquareEventHandler(ByVal Square As Double) _

  Handles oSquare.ThreadComplete

  MsgBox("The square is " & Square)

  End Sub

  对于这种方法,要注意的是处理事件的过程,在这个例子中的是SquareEventHandler,将运行在产生该事件的线程中。它并不是运行在表格执行的线程中。

  同步线程

  在线程的同步方面,VB.NET提供了几个方法。在上面的平方例子中,你要与执行计算的线程同步,以便等待它执行完并且得到结果。另一个例子是,如果你在其它线程中排序一个数组,那么在使用该数组前,你必须等待该处理完成。为了进行这些同步,VB.NET提供了SyncLock声明和Thread.Join方法。

  SyncLock可得到一个对象引用的唯一锁,只要将该对象传送给SyncLock就行了。通过得到这个唯一锁,你可以确保多个线程不会访问共享的数据或者在多个线程上执行的代码。要得到一个锁,可使用一个较为便利的对象--与每个类关联的System.Type对象。System.Type对象可通过使用GetType方法得到:

  Public Sub CalcSquare()

  SyncLock GetType(SquareClass)

  Square = Value * Value

  End SyncLock

  End Sub

  另一个是Thread.Join方法,它可让你等待一个特定的时间,直到一个线程完成。如果该线程在你指定的时间前完成了,Thread.Join将返回True,否则它返回False。在平方的例子中,如果你不想使用触发事件的方法,你可以调用Thread.Join的方法来决定计算是否完成了。代码如下所示:

  Private Sub Button1_Click(ByVal sender As System.Object, _

  ByVal e As System.EventArgs) Handles Button1.Click

  Dim oSquare As New SquareClass()

  t = New Thread(AddressOf oSquare.CalcSquare)

  oSquare.Value = 30

  t.Start()

  If t.Join(500) Then

  MsgBox(oSquare.Square)

  End If

  End Sub

  对于这种方法,要注意的是处理事件的过程,在这个例子中的是SquareEventHandler,将运行在产生该事件的线程中。它并不是运行在表格执行的线程中。



回复 支持 反对

使用道具 举报

565

主题

649

帖子

4228

积分

积分
4228
推广工具板凳
 楼主| 发表于 2016-11-5 14:08:29 | 只看该作者

很长时间以来,开发人员一直要求微软为VB增加更多的线程功能——这一点在VB.NET中终于实现了。VB6不支持创建VB.Net多线程的EXE、DLL以及OCX。但这种措词容易引起误解,这是因为VB6支持执行多个单线程的单元。一个单元实际上是代码执行的场所而且单元的边界限制了外部代码对单元内部的访问。

VB.NET支持创建自由线程的应用程序。这意味着多个线程可以访问同一个共享的数据集。本文将带领你了解VB.NET多线程的基本内容。

虽然VB支持多个单线程的单元,但并不支持允许多个线程在同一个数据集上运行的自由线程模型。在很多情况下,产生一个运行后台处理程序的新线程会提高应用程序的可用性。一种很显然的情况就是当执行一个可能使窗体看起来停止响应的长过程时,你一定会想在窗体上放置一个取消按钮。

解决方法

由于VB.NET使用公共语言运行时(Common Language Runtime),它增强了很多新的特性,其中之一便是创建自由线程应用程序的能力。

在VB.NET中,开始使利用线程进行工作是很容易的。稍后我们会探究一些精妙之处,我们先创建一个简单的窗体,它生成一个执行后台处理程序的新线程。我们需要做的第一件事是将要在新线程上运行的后台处理程序。下面的代码执行一个相当长的运行过程——一个无限循环:

  • Private Sub BackgroundProcess()  
  •     Dim i As Integer = 1
  •     Do While True  
  •         ListBox1.Items.Add("Iterations: " + i)  
  •         i += 1  
  •     Loop  
  • End Sub  

这段代码无限地循环并在每次循环中向窗体上的列表框中增加一个条目。如果你对VB.NET不熟悉的话,便会发现这段代码中有一些在VB6中无法完成的事:

◆在声明变量时对其赋值 Dim i As Integer=1

◆使用+=操作符 i+=1代替了i=i+1

◆Call关键字已经被去除了

一旦我们有了一个工作过程,便需要将这段代码指派给一个新的线程并开始它的执行。完成这项工作,我们需要使用Thread对象,它是.NET框架类中System.Threading命名空间的一部分。当实例化了一个新的Thread类时,我们向其传递一个引用,这个引用指向我们想要在Thread类的构造函数中执行的代码块。下面的代码创建一个新的Thread对象并将指向BackgroundProcess的引用传递给它:

  • Dim t As Thread  
  • t = New Thread(AddressOf Me.BackgroundProcess)  
  • t.Start()  

AddressOf操作符为BackgroundProcess方法创建了一个委派对象。委派在VB.NET中是一种类型安全的、面向对象的函数指针。在线程被实例化之后,你可以通过调用线程的Start()方法开始执行代码。

使线程处于控制之下

当线程开始之后,你可以通过使用Thread对象的方法对其状态进行一定的控制。你可以通过调用Thread.Sleep方法暂停线程的执行。这个方法接收一个表示线程将要休眠多长时间的整型数值。如果在上例中你想要减缓列表框条目的添加,在代码中放置一个对此方法的调用:

  • Private Sub BackgroundProcess()  
  •     Dim i As Integer = 1
  •     Do While True  
  •         ListBox1.Items.Add("Iterations: " + i)  
  •         i += 1  
  •         Thread.CurrentThread.Sleep(2000)  
  •     Loop  
  • End Sub  

CurrentThread是一个公共静态属性,它可以使你获取一个对当前运行线程的引用。

你还可以通过调用Thread.Sleep (System.Threading.Timeout.Infinite)使一个线程处于一种时间不确定的休眠状态。要中断这种休眠,可以调用Thread.Interrupt 方法。

类似与Sleep和Interrupt的是Suspend和Resume。Suspend允许你阻塞一个线程直到另外的线程调用Thread.Resume。Sleep和Suspend之间的区别在于后者不是立即使一个线程处于等待状态。在.NET运行时确定线程是处于一个安全的挂起位置之前,线程是不会挂起的。Sleep则是立即使线程进入等待状态。

最后,Thread.Abort中止一个线程的执行。在我们的简单例子中,我们还想增加另外一个可以使我们中止程序的按钮。要完成这些,我们所需做的一切便是如下面这样调用Thread.Abort方法:

  • Private Sub Button2_Click(ByVal sender As System.Object, _  
  •         ByVal e As System.EventArgs) Handles Button2.Click  
  •     t.Abort()  
  • End Sub  

在此便可以看出多线程的能力。用户界面看起来对用户是有响应的,因为它运行在一个线程中而后台的处理程序运行在另一个线程中。取消按钮会立即响应用户的click事件同时处理过程被中止。

通过VB.NET多线程的过程传递数据

上一个例子展示了一种相当简单的情况。在你编程的时候,多线程有很多需要解决的复杂问题。你将会遇到的一个问题是向传递给Thread类构造函数的过程传递数据以及从这个过程传出数据。换言之,你想要在另一个线程上开始的过程不能接收任何参数而且你也不能从这个过程返回任何数据。这是因为传递给线程构造函数的过程不能有任何参数或返回值。为了避开这个问题,将你的过程包装到一个类中,在这个类中此方法的参数被表示成类的一个域。

有一个简单的例子,如果我们有一个计算一个数的平方的过程:

  • Function Square(ByVal Value As Double) As Double  
  •     Return Value * Value  
  • End Function  

为了使这个过程可以在一个新线程中使用,我们将其包装到一个类中:

  • Public Class SquareClass  
  •     Public Value As Double  
  •     Public Square As Double  
  •     Public Sub CalcSquare()  
  •         Square = Value * Value  
  •     End Sub  
  • End Class  

使用这些代码在一个新线程中启动CalcSquare过程,代码如下:

  • Private Sub Button1_Click(ByVal sender As System.Object, _  
  •         ByVal e As System.EventArgs) Handles Button1.Click  
  •     Dim oSquare As New SquareClass()  
  •     t = New Thread(AddressOf oSquare.CalcSquare)  
  •     oSquare.Value = 30
  •     t.Start()  
  • End Sub  

注意:当线程开始后,我们没有检查类的平方值,因为并不能保证一旦你调用线程Start方法,它便会执行。有一些方法可以从另外的线程中获取这个值。最简单的方法是当线程完成时引发一个事件。我们会在下一个部分线程同步中讨论另外一种方法。下面的代码为SquareClass增加了事件声明。

  • Public Class SquareClass  
  •     Public Value As Double  
  •     Public Square As Double  
  •     Public Event ThreadComplete(ByVal Square As Double)  
  •     Public Sub CalcSquare()  
  •         Square = Value * Value  
  •         RaiseEvent ThreadComplete(Square)  
  •     End Sub  
  • End Class  

在调用代码中捕获这个事件与VB6相比没有太大的变化,仍然是用WithEvents声明变量并在一个过程中处理事件。变化的部分是用Handles关键字声明处理事件的过程并且不再使用像VB6中Object_Event的命名约定。

  • Dim WithEvents oSquare As SquareClass  
  • Private Sub Button1_Click(ByVal sender As System.Object, _  
  •         ByVal e As System.EventArgs) Handles Button1.Click  
  •     oSquare = New SquareClass()  
  •     t = New Thread(AddressOf oSquare.CalcSquare)  
  •     oSquare.Value = 30
  •     t.Start()  
  • End Sub  
  • Sub SquareEventHandler(ByVal Square As Double) _  
  •         Handles oSquare.ThreadComplete  
  •     MsgBox("The square is " & Square)  
  • End Sub  

这个方法需要注意的一个问题是处理事件的过程,在本例中是SquareEventHandler,将运行在引发事件的线程中,而不是运行在窗体从中执行的线程中。

线程同步

VB.NET包含了一些语句用于提供线程的同步。在Square的例子中,你可能想同步执行计算的线程以便等到计算完成,这样便可以获得结果。举另外一个例子,如果你在一个单独的线程中对数组进行排序并且在使用这个数组之前要等待这个处理过程结束。为了实现这些同步,VB.NET提供了SyncLock语句和Thread.Join方法。

SyncLock获取了对传递给它的对象引用的独占性锁。通过取得这种独占锁,你可以确保多个线程不会访问共享的数据或是在多个线程上执行代码。一个可以方便地用于获取锁地对象是关联于每个类的System.Type对象。可以通过GetType方法获得System.Type对象:

  • Public Sub CalcSquare()  
  •     SyncLock GetType(SquareClass)  
  •         Square = Value * Value  
  •     End SyncLock  
  • End Sub  

最后,Thread.Join方法允许你等待一段特定的时间直到一个线程结束。如果线程在你所确定的时间之前完成,Thread.Join返回True,否则的话返回False。在Square的例子中,如果我们不想引发事件,可以调用Thread.Join方法来确定计算是否已经结束。代码如下所示:

  • Private Sub Button1_Click(ByVal sender As System.Object, _  
  •         ByVal e As System.EventArgs) Handles Button1.Click  
  •     Dim oSquare As New SquareClass()  
  •     t = New Thread(AddressOf oSquare.CalcSquare)  
  •     oSquare.Value = 30
  •     t.Start()  
  •     If t.Join(500) Then  
  •         MsgBox(oSquare.Square)  
  •     End If  
  • End Sub  


回复 支持 反对

使用道具 举报

565

主题

649

帖子

4228

积分

积分
4228
软件定制开发地板
 楼主| 发表于 2016-11-5 14:09:37 | 只看该作者
1.Imports System  
2.Imports System.Threading  
3.  
4.  
5.Module Module1  
6.  
7.    Sub Main()  
8.  
9.        Dim mythread1 As Thread  
10.        Dim mythread2 As Thread  
11.        Dim mythread3 As Thread  
12.        '创建线程对象  
13.        mythread1 = New Thread(AddressOf mythreadrun)  
14.        mythread2 = New Thread(AddressOf mythreadrun)  
15.        mythread3 = New Thread(AddressOf mythreadrun)  
16.        Console.WriteLine(Now.ToLongTimeString & "线程对象创建完毕,开始执行线程")  
17.        '执行线程  
18.        mythread1.Start("线程1")  
19.        mythread2.Start("线程2")  
20.        mythread3.Start("线程3")  
21.        '等待线程完成  
22.        mythread1.Join()  
23.        mythread2.Join()  
24.        mythread3.Join()  
25.        '线程执行完毕  
26.        Console.WriteLine(Now.ToLongTimeString & "线程执行完毕!")  
27.    End Sub  
28.    Public Sub mythreadrun(ByVal data As Object)  
29.        Console.WriteLine(data & "," & Now.ToLongTimeString & "执行")  
30.    End Sub  
31.End Module  
复制代码
Dim mythread1 As Thread 初始化Thread 类的新实例,指定允许对象在线程启动时传递给线程的委托。

线程不会在创建时开始执行。 若要为执行而调度线程,调用start方法。

上面代码创建了3个thread对象,然后调用它们的start方法执行它们

调用join方法等它们执行完毕

可在VB.NET2010中建立一个新的Console应用程序,然后在模块中编写以上代码



New Thread(AddressOf mythreadrun) 构造函数中必须将要做为线程执行的函数做为参数传入



mythread1.Start("线程1") start方法可以在执行线程时,向其传入参数



Imports System Imports System.Threading

分类: VB.net

回复 支持 反对

使用道具 举报

0

主题

627

帖子

625

积分

积分
625
5#定制软件#
发表于 2016-11-27 01:36:36 | 只看该作者
全了

回复 支持 反对

使用道具 举报

0

主题

648

帖子

632

积分

积分
632
6#定制软件#
发表于 2016-11-27 15:53:11 | 只看该作者
力.服务很到位!

回复 支持 反对

使用道具 举报

2

主题

650

帖子

652

积分

积分
652
7#定制软件#
发表于 2016-11-27 16:47:03 | 只看该作者
收到宝贝,很开心,卖家服务也很好,下次会在光临的

回复 支持 反对

使用道具 举报

0

主题

987

帖子

1063

积分

积分
1063
8#定制软件#
发表于 2016-11-28 02:51:35 | 只看该作者
有用上。不过习惯好评

回复 支持 反对

使用道具 举报

0

主题

1025

帖子

1027

积分

积分
1027
9#定制软件#
发表于 2016-11-29 05:35:30 | 只看该作者
0多天才来评价的,后台很完美易懂。客服和助理,技师都会一一解答!!全5分星是一定的!!

回复 支持 反对

使用道具 举报

0

主题

605

帖子

600

积分

积分
600
10#定制软件#
发表于 2016-11-29 10:34:11 | 只看该作者
体贴入微,宝贝和描述一致,质量好漂亮,很喜欢‘大爱超好、超赞!

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关导读
群发软件然猫首码网全自动发帖软件
然猫首码网全自动发帖软件,然猫首码网这个网站是一种全新的后台,这类网站有点像博客系统,都是打一个量大挑几页收录好的作为标杆,从而推高他们的发帖收录效果,还别说,百度蜘蛛就爱这套打法,他们收录系统都没有太大的转变了,也不【知】道他们是不是没有钱买硬盘了,现在都是一些存量竞争效果,就是收录了您,他就可能被收录系统给 T 出自己的收录系统内了。全部其实都是这样的打法,现在淘宝论坛,天涯又从新开启,实际都是
群发软件学术皮匠网站自动发提问软件
学术皮匠网站自动发提问软件,这个网站注册是拖动验证码,注册成功后就可以无限的群发起来,账号似乎没有啥限制,不过内容是比较麻烦的输入方式,我试过各种种样的方法都好像不行,这个就除了用 POST 的方式提交内容,还有座标点击一下,然后复制粘帖板再粘帖内容会好一些,其它方式都感觉不是很好用,以前遇到这个编辑框是点一下源码再开一下所见所得方式,就可以把内容整进去,可是这个网站他把编辑框给删除了,导致现在只用了粘
群发软件大河商务网自动 B2B 发布帖子软件
大河商务网自动 B2B 发布帖子软件,这个网站和别的模板不同,它是所有版块都可以发,一时又只能发几个版块,所以软件把所有版块都放到了列表供大家选择,有时候网站就是这样,调来调去的,您还要适合他的操作,不然就只能发不了的状态,网站的版块顺序和别的也不同,要是看到他有更改,就可以把版块网址给重新放到列表中去,其实版块就是发帖的那个网址数字不同而已,其它是没有区别的,但一定要添加对的,不然输入内容后就会变成
群发软件乐优网POST版本发帖软件
乐优网POST版本发帖软件,这个网站是 B2B 网站,由于和别的网站不同,所以导致通用脚本全部失效了,单独做一个 POST 版本的,这样方便管理,B2B 软件最好还是单独的好,如果每一个网站都用了通用设置,收录自然会极差,因为百度不喜欢啃过的口香糖哦,每一个网站单独设置,可以做到完全不同,内容可以多样多变,有一些事您看似做了无用功,看似很麻烦,但实际效果肯定会更好,这可不是做无畏的事,而是收录的习惯摆在那里,自然不
群发软件貔貅商贸网全自动B2B网站软件
貔貅商贸网全自动B2B网站软件,这个网名字看上去会不会有点难,估计是百分之九十的人都不会拼写出来吧,说归说,这个网站现在收录还蛮好的,属于独苗的存在,这个脚本的要求的客户也是比较奇思妙想的,他想标题内容图片相互对应起来,他发的这些五百多个产品,都是化肥类的,所以品种有很多,内容和标题图片想对应,必须要统一战线,其实也是可以实现的,只要图片加上标记就行,比如图片和内容,里面有一个统一的关键字,如甲笨胺
群发软件GITEE网站主页自动全发全采集软件
GITEE网站主页自动全发全采集软件,这个网站的牛程度就不用更新了吧,几乎是发啥都会被秒收录的网站,这个脚本可不是整什么发帖,或是发日志的,而是更新个人主页的脚本,老三样,标题就是微博的姓名,而这个简介就是他需要提交的内容,就这两个东东组成了我们要发的宣传广广告,之后就是把主页网址采集下来,保存到记事本中,这个脚本可不是什么注册的脚本哈,先前已经更新过注册的样板了吧,也是这个网站的,但这个脚本只是写入
群发软件语言中文网全自动发帖工具
语言中文网全自动论坛发帖软件,这个网站发主题,极量比较高,可能前期发的代码太多,蜘蛛根本不懂是什么,以为又是原创,再加上发布人多,人气在那收录自然差不了哪去,估计他们的程序员都很多跑去上面折腾代码的吧,开局好自然发日志或是发主题收录会好的不得了,可是却很少人跑来发,不【知】道为什么,可是秒收录的网站哦,发网址也可以秒收录的网站,不能错过,不过注册需要一个手机号码收验证码才会比较容易注册,登陆是不能
群发软件铁甲论坛全自动发布软件
铁甲论坛全自动发布软件,初看这个网站您可能以为是什么军事的论坛,其实它只是一个普通的挖土机的论坛,网站对于手机版块收录会比较好,发帖是一种头条形式的,内容只能用文本格式,不能超过五千字,不过可以自己在头条发帖的地方添加上版块,账号发帖有限制的,可以准备多个账号放到这个脚本里自动运行,这样就可以实现 N 多的帖子同时发送的过程,发帖成功,有一个提示,软件用了一个点击确定这个提示后,网站自动会跳转到发帖
群发软件沙龙艺术网自动日志群发
沙龙艺术网自动日志群发,这个网站可不是让您去点投稿的,而是偷偷进个人中心发日志的,这个虽然是普通的论坛,但如果网站没有关闭发日志的版块,是可以一直发日志的,不过他时间把控很严格,您发的太快,立即会被限制 15 秒的时间,如果您按正常的几十秒去操作的话,就会让您顺利通过所有控制和局限性,这个脚本是昨天注册然后发日志缓存的操作,他网站限制着每一个账号发帖就要隔十五秒才可以操作下一个日志,不过您如果每一帖都
群发软件沙龙艺术网注册账号激活账号软件
沙龙艺术网注册账号激活账号软件,这个网站是 DZ 模板论坛,注册是利用邮箱账号进行注册,然后通过邮箱激活网址就可以把账号弄好,软件利用临时邮箱收到了信件,采集好网址,然后访问一次激活码网址就可以完成激活账号,注册还是蛮方便的,没有半个验证码,也不封 IP,可以自由发挥出 N 多账号起来,而且完全是免费的,有蜘蛛池的话,对于这种网站是极度友好的,就怕没有的话就歇菜了。注册好账号,软件会自动保留缓存,放在发帖脚
群发软件53货源网全自动群发工具
53货源网全自动群发工具,会员登陆后就可以发帖,这个网站是发布货源的网站,相当于一些工厂货源发布的网站,厂家是比较多人来这里发的,网站也比较新鲜,不像是一些 B2B 网站照样直接就拿来用的网站,真的,有的网站本来是很有机会的,可是他们非不愿意自我放开,导致扣扣爽爽的,结果就让很多货源的人不【知】道去哪里发,换句话说,有的人有资源找不到发的地方,有的人有资源,却不【知】道哪里找到客户发,这就有点悲了,本来
群发软件华中贸易网全自动群发软件
华中贸易网全自动群发软件,这个网站是 B2B 网站,现在这类网站对于上传图片 POST 这块会有比较大的区别,有的是要自定义后缀,有的是要对应后缀,比如是 PNG 或是 jpg 的都可以,这个网站五大分类都可以发,像供应,资讯这些会收录比较好,软件对于这个 POST 会比较友好,但调试是很麻烦的,有时候多一个空格也不行的,网站对于数据流处理是很严格,或是说他们容易很低,不管收录有好有差的一边,这类网站有时候收录极好,有时候
群发软件168信息网自动发帖软件
168信息网自动发帖软件,这个网站是 B2B 网站,和以前做的都不同,它是一个新人开发的平台,收录比其它的都好,可见作者是不是打的批量版,而是打精品战略的人,有的人喜欢搞大军团作战,有的人喜欢搞尖刀式作战,各有各的优点,看自己能力圈在哪里就往哪里发展才是最优选择吧,如果有能力那肯定是尖刀式的省钱,但没有,那就只能做批量创造收录的概率呢,就像成功的事常做一样,只需要把量打上去,一样可以达到那种效果的,所有的
群发软件云推送网站网站自动发布帖子软件
云推送网站自动发帖软件,这种网站也是 B2B 改版过来的,不过他看上去会比较新鲜一些,毕境很多功能像是以前的那些搜了网的功能,这种平台发帖多,收录主要是靠提交给百度蜘蛛池的,如果没有自己的池子,是很难被百度这老人家强行收录的,网站比较简单,但可以刷新信息,和这个发资讯的脚本一起上传,听说刷新收录快,不【知】道是不是真的哈,软件自动登陆账号,自动发帖,导入标题内容,要和网站开 VIP 会员,不然是发不了帖子的
群发软件站站网全自动群发软件
站站网全自动群发软件,这个软件是 B2B 网站,现在这类网站发的人越来越多,反正有这样的市场,那些单个的网站反而没有什么好戏码,这类网站批量生成的,有好的会留下,收录不好的,自然就会被换一个域名,换一个网站空间重新去做,然后留下就会越来越好了,软件只要导入标题内容,导入账号就可以全自动发帖,如果用软件自动发帖,就可以省了很多手工操作,比如他能一年挂机不用操作心,只要自己准备好账号密码和标题内容就可以全
群发软件投聂网全自动B2B发布帖子工具
投聂网全自动B2B发布帖子工具,这个网站是 B2B 网站来的,自己可以自主充值,这些 B2B 网站可能没有秒收录,但月收录还是有的,他们打的都是一个批量生产,相当于边发边收录,还是边发,您说终竟的最终收录,他们是肯定没有咯,而这些理论上存在的例子也不是那么好的呈现在上面,这个网站也分为 PC 端一个,POST 后台版一个,都做了一个脚本吧,免得有的人喜欢爱好都不同,也能闭出一个不会的理由出来,有了这两个版本就不同,他们
信息发布软件旅法师营地创作平台自动发布帖子软件
旅法师营地创作平台自动发布帖子软件,这个网站发帖的步骤会很多,做完后要三十多步,他要选图片,又要上传封面图片,确定选择版块这些,整的头都痛的节奏,现在还有哪一个平台这么复杂的哈,网站是手机验证码登陆的,自己要注册一堆账号,他每一个号只能发一帖,这种这么偏避的平台,还是没有什么人抢着注册的,随便找一个 API 就可以注册一堆的号,网站游戏论坛,收录不会差到哪去的,就是步骤比较繁琐,只要做好一次,倒计时足
群发软件五洲商务网全自动发布帖子软件
五洲商务网全自动发布帖子软件,这个网站是 B2B 网站,继续弄两个版本吧,一个是 POST 的,一个是普通的版本,对于搜狗来说,这些网站效果还是很好的,很多人傻白甜分不出什么是什么吧,所以一直有人在用,不过这些现在都不重要了吧,百度自己也没有什么大的更新,感觉有点修修补补,几乎要放弃了,可是规则上加码,完全不管收录了,这个网站,只要有号就可以发,所有什么供应,采购,行情,这些信息都会自动切换着发,从头部切换
群发软件CSDN网站自动发注册账号软件
CSDN网站自动发注册账号软件,这个软件是利用短信验证码,大批量的注册 CSDN 网站的账号的,注册的时候发现居然没有验证码,以前这个网站是丢外链的圣地,现在倒是管的严格,收录也没有以前那么好了,发现他注册账号完全不用验证码了,这倒是一件值得看的好事,只要收一个短信码,就可以顺利注册成功,不过初始账号还是比较多的,需要输入新的用户名,点确定就可以注册成功,它网站注册成功会跳到主页去,然后软件判断主页代码,进
群发软件gitee网站注册账号软件
gitee网站注册账号软件,这个网站有一个拖动验证码,有一个字母验证码,以前是做过的,现在换一个短信平台,就可以直接注册成功,并且把缓存给采集到列表备用,这个网站收录是几乎无敌的状态,所以账号是肯定值钱的,您如果有什么外链,可以丢到这个网站进行跑蜘蛛,这个网站有点像以前的 CSDN 网站,CSDN 以前是超多漏洞的,不【知】道以前发过的人有没有记过,发外链几乎秒收录,可是他自己太作做了,非要改变,导致收录不同往日
群发软件秀购网全自动发布帖子软件
秀购网全自动发布帖子软件,这是一个 B2B 网站,只是做了一个 POST 脚本,一个普通网页的脚本,他们的限制是比较少的,网站个人中心也可以联系 QQ 充值,这些可不是我们软件的平台,他们找的网站都有这些,软件中您想节省电脑资源的,可以用 POST 版本,想看过程的就用 PC 普通的版本,两个有好也有差的一方面,但收录都是一样的,图片放到软件的列表中去,他能自动的传上网站去的,但图片后缀只能用 JPG,其它格式不能上传上去,
群发软件武法出租车论坛全自动发布帖子软件
武法出租车论坛全自动发布帖子软件,这个论坛版块是比较多的,而且是一种动态验证码,它是一种典型的养网站例子了,不过您要是没有买到内部账号,发帖是比较费劲的,因为一个号只能发两个帖子,软件先是自动的写入网页缓存账号,写入缓存是只能有两个论坛发帖参数的,如果不然,您一会发帖的验证码,他永远提示您是错误的,针对这些有登陆验和发帖验证码的,都必须按这个脚本这样写入缓存才可以。这个可以作为动态验证码论坛例子,
群发软件导列网全自动群发软件
导列网全自动群发软件,这是一个 B2B 网站,做一个普通网页版的群发软件,做一个后台 POST 提交的软件,软件没有太多折腾的地方,全部都是自动操作的,导入标题内容就可以全自动发帖子,图片一定要有 JPG 后缀的,不然会在 POST 脚本上传不了图片,内容的图片可以加在内容 2 或是内容 3 里,这样发出去带 IMG 的标签,就会显示到内容图片里,您发帖的时候,在内容框里上传一次,内容会自动的带在图片里面穿插进去,弄二个脚本,一
群发软件快手图文自动发布软件
快手图文自动发布软件,图文发布实际就是传一张图片,然后加上标题和内容,和上传视频一样,他都是一样的操作,只是内容不能超过一千字,不然会发不出去的,手机 APP 上也会有这样的限制,视频对于这个网站来说发的比较多,图文虽然流量很大,但却是没有多少人有耐心看完所有的文章的,都几乎往视频流里里折腾,图文这个可不是靠什么百度收录的,他们就像 BIBI 网站这些一样,全靠自身的超大 IP 流量进行粘帖用户,相当于一个大的
群发软件百家号头条全自动群发软件
百家号头条发送软件,这个头条是自备文章导入发送的,之所以新瓶装旧酒是因为这个是有技巧的发送,他是利用一个 HTML 编辑平台的转换代码,让自己可以在百家号发送头条号不被删除除,文章估计都是用通过小炎号类似的人工智能创作平台进行攒写的,所以都比较容易不被删除的,而且很容易被百度收录,现在几乎没有人会通过自己手打出来,软件先是 HTML 平台把代码给转换一下,再用软件的复制全赞功能,把内容给写进了粘帖板,写入缓存
群发软件知乎个人主页自动设置软件
知乎个人主页自动设置软件,用缓存去写入【知】乎个人主页名称,他是 180 天才能改一次的名称,还有他里面的个性签名,他的职业介绍,都成了百度蜘蛛超级爱好的地方,只是注册一个号只能改一次,这着实有点浪费 RMB 了,不过效果是好的很的,第一来,也极少会被封号,就算号被封了,他的个人主页还在那,名称也不会变,致少还一直在那,二来还是要找到手机好的平台,才可以这样玩,价格不贵,脚本这个是廷续昨天的那个,这个是设置
群发软件知乎自动注册软件脚本下载地址
知乎自动注册软件,这个网站管的是比较严格的,而且验证码也是比较恶心的那种,但对接飞码这个平台还是可以注册不少的账号,如果这个平台没有号码了,也可以更换到其它平台的 API 里,软件并不限制您对接哪一个 API 接口的,只要有随便可以改的,像什么俄罗斯或是其它国家的号码都是可以收到的,只要短信一接,就可以登陆,有的平台限制多,有的平台限制极少的,这个脚本主要是提供注册,〖逻辑〗判断是比较多的,各种判断有没有登
群发软件搜客商务网全自动发帖软件
搜客商务网全自动发布帖子软件,这个网站也是 B2B 网站,做两个版本供后续使用,网站传图片一定要注意,这个脚本默认是 JPG 的,如果需要改成其它格式,他网站是不能自动识别的,需要改脚本上传动作,只要把上传动作改成对应的后缀格式就可以,但没有经验的最好不要去动吧,JPG 图片用的比较多,就用这个就可以了,也没有什么很卷的操作吧,各种各样的格式,如果不是为了美化什么的,没有多大的必要,网站每发一帖就要付一角钱的节
群发软件商务导航网全自动发布软件
商务导航网全自动发布软件,这个网站也是 B2B 网站,只做分类信息发布,现在的目标是把所有这些 B2B 网站进行大切换,做一个 POST 版本,一个 PC 普通的版本,像昨天的那个网站,居然玩的是手机收录的接口,而这个倒是中规中矩的网站,只要有 VIP 都发帖就可以了,没有太多的限制,不是 VIP 也不给发帖,全部是走会员路线的,网站只要有点收录,就有一大群人往里面堆量的,现在 B2B 网站都成了这个常态,然后收录又会慢慢下滑,然
群发软件发财草网站自动发帖软件
发财草网站全自动发布软件,这个网站倒是蛮新的,他有点像分类 58 同城网的模块,现在倒是落了一个清静的网站,专攻什么手机 APP 里去了,越来越麻烦的地方,这个网站还是B2B后台类似的,能不能收录,完全看发的数量,发的多了,收录自然就好了,如果发的少就很难说了,免费发的时候还会有一个验证码比较麻烦的,网站只能发一个地方,就是资讯的版块,也不用做太多〖逻辑〗判断了,软件还是做了两个脚本,一个是 POST,一个是普通
群发软件爱搜群网站自动发布软件
爱搜群网站自动发布软件,这个也是 B2B 网站,网站现在免费发帖都有验证码,每天有十帖的免费,都是集人气的一种措施,不过免费的发的这么少自然效果不会好到哪去,这个要了解哈,毕竟水桶的容易是按他的短板计算的,可不是什么随随便便可以改变的事,这个脚本分二个脚本,一个是后台运行,但您必须开好会员,不然肯定发不成功的,这可不是 POST 就可以自动的跨越他的限制,就直接可以发了,这是不可能的,除非人家允许这样免费哈
群发软件银盾皇全自动发帖软件
银盾皇全自动发帖软件,这里两个版本,一个是 POST 版本,一个是普通版本的,很多人非要弄两个版本去发一个网站,有时候需要快,有时候需要看到过程,所以很多 B2B 网站改成了两个版本,网站发帖是比较简单的,有账号就可以发,他们 B2B 网站本来就是用来发广告的,他们充好会员就可以一直发帖,网站是一种计件方式的,每发一帖就扣多少钱,网站越好,收费就越贵一些,便宜的网站也有人发,那些家伙也有的是图心里安慰的,也不【知
群发软件跑列网全自动发布软件
跑列网全自动发布软件,这个是 B2B 网站来的,只要导入好标题和内容,放好会员号就可以全自动发帖,这个是后台发送的版本,和普通的版本,只要有号就可以全自动发,两个版本放在上面了,看电脑吃饭,第一个就用的是普通版本,他能看到过程,一个是 POST 过程,他全程后台运行,可以多线程,发的会比较快,几乎不占电脑资源,后台静默运行,针对差劲的电脑设计的,不过您看不到过程有时候会心慌慌,人就是对没有掌控感的东西会产生
群发软件小木虫论坛自动软件
小木虫论坛自动发布帖子软件,这个脚本是手机版的,所以还是有必要发布一下的,网站每年这几个月,会超多人用,所以到处找这个软件的人也比较多,而 PC 不管是用的 POST 还是啥,都容易被封号,但是这个 WAP 端应该是老掉牙的地方,所以防火墙会有一个漏洞的,这个网站主要是内部号发的比较多,也就是他们自己的号,小号发还是有机率会被封的,最好有能力的还是拿到内部号,这个端的会发的比较快,可以自己发一些版块,导入比较多
群发软件鲁德软件平台提问软件
鲁德软件平台提问软件,这个网站是一种软件平台来的,软件在这个网站的提问版块进行提问,因为是提问的,一般一个账号就可以发很多,不过他是有一个极验证码的,软件这个脚本用的是图鉴平台进行打码,识别还是很便宜的,直接可以拖动对,没有用 POST 的那个极验证码平台,感觉他们现在已经差不多了,时代在进步,人工智能找这些图片座标还是像爸爸打三岁小孩似的,随便下手。不过这个网站和的是缓存登陆哦,第一次发,您可要自己登
群发软件爱搜网全自动群发工具
爱搜网全自动群发软件 POST 版,这个网站只有两个分类,一个是产品供应分类,一个是资讯分类,产品供应分类的系数是 25 这个可能网站自己也没有关注到问题所在,一般是 21 系数收录才会好,好在资讯这个默认了,对于收录,这些网站都已经被百度蜘蛛给训化了,人家都会按惯性的方式去爬行,如果您想另起一门旗帷,那就只能说抱歉了,您还没有那个实力与之抗争,还不要说,人家现在技术性的业务是比较少的,您想让他改变那种爬行方式
信息发布软件POST 中巴网全自动群发软件
POST 中巴网全自动群发软件,这个是 B2B 网站,不过以前都是做的普通版本,这个是 POST 版本,可以节省电脑很多资源,可以不占用后台,可以后台静默运行,可以飞快的跳过一些错误,可以秒完成发帖过程,自动后台传图片,然后采集图片地址,进行采集保留,再判断里面有哪一些分类,再把分类随机切换,这个标题可以加长的模式,内容也是不被限制的发帖模式,因为是后台运行,他这些限制的都是页面 JS 限制的,不过您要不是网站会员,
群发软件乐扫网 B2B 网站全自动发送软件
乐扫网 B2B 网站全自动发送软件,这个网站也是 B2B 网站来的,有的人总是在迷茫中生活着,总是说找不到网站发,那您就可以弄几个这样的 B2B 网站先把池水动起来呀,为什么一直在纠结那些秒收不秒收的事呢,很多网站前期是沉默的,某天东风将至,收录直接就飞速上升了,这些网站现在都有这种特点,不过他们也不【知】道,现在有很多论坛更是牛,收录比这些快的多,可不是什么 DZ 论坛,而是一些主题论坛,也是这样,某几天收录超级
群发软件记得网 B2B 网站全自动群发软件
记得网 B2B 网站全自动群发软件,这个网站也是 B2B 网站分类来的,他对搜狗收录会比较好,不过谷歌居然也有很高的收录,不【知】道他是走的啥运气了,百度收录差一些了,现在几乎很少人玩这些,不过有收录就有流量肯定的,国内国外都有,网站现在已经做了这种 B2B 网站模板了,全部过程只需要改一个地方,那就是网址列表的网址,您换了网站,只要把域名放进去,全部就会自动的,不管您想发供应,还是产品,还是行情这些分类,软件
群发软件尚格论坛自动发布帖子软件
尚格论坛自动发帖软件,这个只是普通的论坛,但因为先前是地方论坛来的,人气还可以的,收录也不会差到哪去,论坛是用户名登陆的,他一个页面有手机登陆,这个可不是通用的登陆接口,普通登陆是登陆不上的,只能用户名登陆的接口才可以,注册账号的时候要注意,不是手机号码登陆的,注册是手机号码,但是用户名才有效果的,发帖的时候没有验证码,一个账号可以无限的发送。只是发帖时间要十秒以上,不然他可是会出验证码给您按排上
群发软件驴在陌自动发提问文章软件
驴在陌自动发提问软件,这个网站是发旅行日记和路线的,不过日记这里肯定收录的比较好一些的。只是他登陆的地方只能用微信搜码登陆,短信验证码登陆,收录后还是要跑百度蜘蛛池的,不然基本不会有收录量的,发帖还有一个字母的验证码,您还必须写上,不然是不给发帖的,网站间隔时间是三十秒一帖,如果要快就只能加多几个号同时开脚本去发的。内容这里需要用座标的输入方法去整,不然是没有用的,因为他不让源码输入,也不用逐字输
群发软件Apipost网站自动发博客软件
Apipost 网站自动博客发帖软件,这个网站登陆是有一个点触验证码的,不过对软件来说这种验证码已经是最简章的存在了,所以加一个座标点击,就完事了,网站也没有太高的要求,不过发那个博客是五分钟只能发一帖,不然会一直显示发帖太过于频繁,会发不出去的,五分钟一帖,是很折磨的,但软件不会嫌烦,他能自动的切换账号发,可以自动用的缓存登陆发,可以自动动的等分钟发的,完全看您想要方还是圆的,一切都可以调试,没有什么限
群发软件灭提问网自动发提问软件
灭提问网自动发提问软件,这个网站后台会不会有眯怪,不管这么多了,软件可是用来发广告用的,这个网站登录有验证码,发帖也有一个字母的验证码在上面的,所以是要耗钱的,不过这些网站这两年如果找到好的,都是秒收录的存在,比百度自己的产品收录都要好,这是非常神奇的地方,特别是这些提问类的网站,更是牛的不行,边发边秒收,只是每天要发,有一天不发,那收录就全部回到了解放前了,原因可没有人【知】道的事,规律就是这样
群发软件齐鲁信息网站自动发布工具
齐鲁信息网站自动发布工具,这个网站只是一个站群论坛来的,他网站会自动大量地用软件挂 N 多信息,等收录好了就卖账号给别人发布帖子的方式,论坛是比较难做收录的,但一旦能做起来,收录会更好一些,排名也会高,论坛本来就是冲着交流的属性去的,所以百度蛛蜘收录的方式排名也是不一样的,虽然经过了这么多久,但基础框架摆在那里是不可能太多的转变,网站就一个简单的问题验证码,回答对了就可以登陆和发帖,他网站也会有大量
群发软件微软Sway自动生成软件
微软Sway自动生成软件下载, 对于国内来说可能不是很神奇,但在谷歌里可能早已经是大佬级别的存在吧,外国人的东西有很多是很新鲜的玩意儿,但用的人却像是比较高级的,而国内的东西,有一点新鲜的东西就会扎堆在那里玩弄,也不【知】道是价值观的问题,还是因为人的大脑都喜欢没有见过的新鲜玩意儿,这个东东可以生成很多漂亮的新闻稿,像 PPT 类似的。不过外国人这些看上去很多都已经被人工智能给完美替代的主了吧。软件这里是写
群发软件百度文档自动上传 WORD 文件软件
百度文档自动上传 WORD 文件软件,这个网站应该是比较多人弄的,不过弄的都是正规的方式,以前可以弄成审核通过了,放一些外链网址去,可是现在审核通过修改,又要审核了,基本让他堵住了漏洞,不过还是有一些人在上传 WORD 用的,毕竟正规工作的人太多太多需求了,这些文档收录好,还可以赚钱,很多人会贪那点方便下载别人集合好的文档是行调用,特别是一些总结,一些目录,都是别人幸苦劳作的结果,甚至有的是作为小说的宣传地把
群发软件企业录网站分类信息软件
企业录网站分类信息发布软件,这类网站有十年多的历史了吧,还是老网站好,随便发一发就收录,问题是养起这些大胖小子也是不容易的,先前的坚持与无奈,以前可能会觉得是一只吞金兽,现在可是一棵摇钱树了吧,还理啥财,种一棵树最好的时机是十年前,其次是现在,我们努力的规划好了吗,现在人工智能发帖也是这样,找一个 AI 的形象,把自己训练出来,也许可以永生哦,有很多人都是这样想的,把自己所有的思想存到 AI 里,算出来一
群发软件师徒网自动发布提问软件
师徒网自动发布提问软件,这个网站有点像博客,不过他又分出了一个提问版区,所以这里收录会比较好一些,他这个提问区其实是 WP 博客系统弄的,也不【知】道为什么整出这么一个版块出来,他登陆方式,全部都已经美化了,但 WP 博客系统那种选择分类的模型至今没有什么变化,还是老三样,这里发布帖子的时候,他分类是用了固定的方式的,登陆有一个点触验证码,估计是比较简单的鼠标检验,用座标功能点击一下就可以实现自动登陆了。
群发软件大河网B2B软件
大河网全自动群发软件,这个网站是 B2B 网站来的,本来就给您发广告用的,不过他只有发资讯类的,要充多少钱他是可以自动开通的,也算是很方便的一个自助网站了,这类权重比较小的网站,网站主人也是很聪明的,他们会把所有信息发到一个分类,这样可以提高一个分类目标的权重,收录自然会比散弹枪好很多的,只是网站也没有啥快的,很卡屏的感觉吧。不过他这个鬼下拉分类倒是很奇葩,天天会更换,不【知】道要整点啥,所以我这里是
群发软件天天基金头条发布软件
天天基金头条发布软件,天天基金这个可是史上最多有钱人的集散地,网站以前其实是他博客的一个升级版,不过现在头条看上去大气上档次一些吧,也没有太多的限制,只是一个账号一天只能发五帖,首次登陆会有一个点触验证码,不过第二天就会没有,网站是可以缓存登陆的,要是封号了就很完蛋,内容要关于财富之类的内容,不然是会被秒删除的,软件现在是用账号密码登陆,第一次登陆您得手工去输入验证码才让登陆成功,账号密码可以自动
群发软件建设工程网软件群发
建设工程网软件群发,这个网站看上去也是同一批人产品,这类 B2B 网站,如果能收录的,都会出大牛股,如果不能的,那就只能做一个低调的的老百姓了,百度蜘蛛也是一样的得性,看到这类网站开始的时候疯狂追逐,等发现网站内容太过于相似的时候,他又心生讨厌了,只好时不时的远离了,某一天还来给您玩一个空然消失的游戏,让您猜个饱,您是这里生病了,还是那里得病了呢,不过找原因都是徒劳,所有问题都其实出在一个新玩意儿的身
群发软件中国结艺网自动 B2B 网站群发软件
中国结艺网自动 B2B 网站群发软件,这个网站是发布广告的网站,只要有号就可以发,没有验证码,没有审核,有内容和标题都可以导入进去发,其实现在 GPT 这类生成文章,发起来效果会好一些,自己的内容,再加上生成的内容进行发上去,会比插入新闻和小说内容会好一些,只是很多后【知】后觉的人不【知】道怎么生成去用罢了。 结艺网自动 B2B 网站软件下载地址: 随着互联网的普及和电子商务的兴起,B2B(Busin
群发软件当当AdSmart 自动上架货物软件
当当AdSmart 自动上架货物软件, AdSmart依托全球最大中文书店&网上商城当当网,帮助客户进行最有效的市场推广。面向白领,公务员及您可自由选择广告发布类型和目标页面,并可随时修改广告内容和预算。这个软件可以自动批量的上架一些自己的物货,自己只需要输入书本的系列号到软件中去,然后软件会自动按书名,关键字排序,把货物自动把图片,和系列号自动上架上去的一种程序化操作,账号这个分类也是需要自己添加一下的,就是想
群发软件36商务网发布帖子软件
36商务网B2B网站软件,这个网站自然也是 B2B 分类商务网来的,网站是做搜狗搜索的,所以对于这个比较友好一些,只是他们都是 PC 端的,虽然搜狗能秒收,可百度收录也没有多好的效果的,这些网站现在主要是打一个堆量的效果,发的多,收录自然也会上去,发的少的话,自然没有什么好的收录量,不管您发的这种类型网站是大网站或是小网站,没有量一定就是扯皮,没有效果的。只要把量堆下去了,百度蜘蛛多么正人君子,最好也会看在多的
群发软件哔哩哔哩网站专栏群发软件
哔哩哔哩网站自动上传内容图片发布专栏软件,这个网站就是账号比较难求得,一直以来他网站都这种开放模式,收录是现在全网巨好的一份子,现在几乎没有这么开放的网站,有这么高收录量的老大哥,这个脚本可以上传四张图片,其实就是重复的把那几步上传步骤修改一下就可以的,然后分别采集存放到了软件的四个列表,方便插入到内容里,他调用图片必须有一个代码,不然是无法显示图片的,这层里是最麻烦的地方吧,不过专栏不用上传视频
群发软件电梯阁论坛群发工具帖子软件
电梯阁网站全自动发帖子软件下载,电梯阁论坛全自动发帖软件,这个网站看上去会很普通,不过只是一个论坛,但是他是一种技术性论坛,所以秒收录是极高的,特别是他放广告的版块,收录还是比较喜人的,都很多秒收录,看来很多人还是很在乎这些技术性的分享的,虽然现在不正常的人还玩着电脑,正常的人可能早就飞上了哪一个高枝了吧,网站还是这么奇葩的样子,版块多,广告多,收录也居然还被百度蜘蛛给爱上了哈。 电梯阁论坛群发工
群发软件搜狸网站自动发帖软件
搜狸网站自动发帖软件,这个网站是一种注册账号模式发帖的,他和B2B网站类似,但网站没有这么容易即时放开审核。显示中的都是自动审核过的,网站收录的也是搜狗的作用,不过网站是付费形式的,他有会员后台,登陆也会有一个验证码,发帖就一张图片,一个分类,一个标题内容就可以自动发帖成功,没有什么难度的,不过内容这个输入框是嵌套的方式,也就是只能针对他一个网站会有作用,换一个网站这步就得重新做了,好在网站发帖也没
群发软件微页B2B网站发帖软件
微页B2B网站发帖软件,软件市场营销和信息发布时,微页B2B网站发帖软件无疑是一款备受推崇的辅助工具。该软件专为在微页B2B平台进行信息发布与推广而设计,其独特之处在于发帖权限主要面向付费用户开放。这一特性使得微页B2B网站得以有效筛选并确保平台上企业的资质及信息的真实性,从而维护了一个相对纯净且高效率的商业信息发布环境。 微页B2B网站发帖软件下载地址: 发帖过程录像: 微页B2B网站发帖软件作为一项
群发软件图图网文章自动投稿软件
图图网文章自动投稿软件,这个看上去像是一个相册网站,但他其实是一种投稿的网站来的,账号也是付费才会通过审核,并不是免费让您我限发的,网站肯定有点水份才会让您付费,一般这类付费发帖的网站,都可以实现免自己提交蜘蛛池的效果,至于收录结果,完全是看您自己的标题内容的质量说话的,再加上网站的权重高,那收录可能超好,要是没有达到蜘蛛池的要求,那收录就像打水漂似的差劲的,发这类网站,最好的方式是自己复制当天秒
群发软件喜马拉雅自动评论软件
喜马拉雅自动评论软件,这个网站可以发听歌单的,不【知】道为什么大家都不动合,不过今天刚好有人要弄一个评论,他说收录更秒吓人,他是先采集最新的听单,然后采集多少页,再进行听单逐个评论,由于是最新的听单,所以评论都几乎在第一页呈现,如果提交给百度蜘蛛池,很快就秒收录了,这些网站PV非常高,几乎是人气最大的地方,他们拥有的宝藏是值得开发的,如果你的号是VIP号,评论几乎是秒出来,他是利用听单的评论收录,所以
群发软件亿图脑图账号注册个人主页中心页宣传方案
亿图脑图账号注册个人主页中心页宣传方案,这个网站是注册账号进行主页宣传的,这个网站是AI脑图生成的,非常聚人气,所以收录一直很好,他个性签名可以输入标题和内容,内容是二百个字,超过了就输入不了,提交不成功,最好是自己算好字数导入,特别是有一些特殊符号的,这种网站是要跑蜘蛛池的,不跑基本很难收录,不过一旦收录,会一直存在上面,很划算的,排名也很高,不过这个网站也有一个毛病,他要在个人主页里点注册,如果
群发软件17173社区发帖软件
17173社区发帖软件,游戏社区一直是秒收录的地方,像这些大IP超级最多人玩的PV地,肯定都是秒收录的高级地区,这个脚本是自动在剑侠社区发帖的,社区可以自己更换,也可以自己选择分类,不过现在收录最好的就是这么几个社区地了,虽然他是三级域名,但17173的名头还在的,社区里最多人的地方,就是在这里了,社区很多人流的地方,不过这个一个账号发帖会有限制,软件是利用缓存CK进行写入的,没有做登陆步骤,因为他登陆有验证码,
信息发布软件知识辰星网站动态群发软件
知识辰星网站动态群发软件,这个网站和以前的动态微博类似的网站,他是没有太大的区别的,不过他网站一会放开注册发帖,一会又限制,让人摸不着头脑,网站放开的时候就像是洪水一样带来N多的收录,发帖多的人自然知道怎么弄内容可以收录,以不弄弄某些内容不会收录的,如果不明白这点,是极度百万剧的存在,因为你根本就没有吸取前面的经验,只是有盲目从众的干活,是得不出好的结果的,做很多事情既要低头拉车,也要抬头看路,知
群发软件720云网站自动创建场景软件
720云网站自动创建场景软件,这个网站是做全景VR影像类似的,发现他们居然可以把这个链接做为宣传的地方,不过只能五十个字完工,也就是标题这里输入五十个字左右,脚本里做了限制五十个字,太长会被K掉,用的是他的素材库,网站没有什么太大的限制,封号也是看运气的,只是网站不能用缓存登陆,他那个验证码是会动来动云的,传到网站打码会有一点差别的,基本是手工打码一个号就可以一直发,没有什么限制,素材用啥都可以,网站权
群发软件QQ 音乐歌单全自动群发软件
QQ 音乐歌单是一个比较低成本的宣传方式,软件先是通过 QQ 登陆歌单页面,然后往了老面的发标题和简介进行宣传,音乐视频小说站可以说是最容易收录的地方了,比其它的限制还少,现在主力位往往很少关注这些,这也是给广告提供了位置的空缺地带,这个脚本可以采集缓存,然后写入缓存进行账号切换着发,这样是很简单的操作了,有的收录了,连评论都成了权重地,因为这些跑跑蜘蛛池极容易变成一个收录地带圈,这也是因为 腾讯这些默认

QQ|( 京ICP备09078825号 )

本网站信息发布软件,是可以发布论坛,发送信息到各大博客,各大b2b软件自动发布,好不夸张的说:只要手工能发在电脑打开IE能发的网站,用这个宣传软件就可以仿制动作,进行推送发到您想发送的B2B网站或是信息发布平台上,不管是后台,还是前台,都可以进行最方便的广告发布,这个广告发布软件,可以按月购买,还可以试用软件,对网站的验证码也可以完全自动对信息发布,让客户自动找上门,使企业轻松实现b2b发布,这个信息发布软件,均是本站原创正版开发,拥有正版的血统,想要新功能,欢迎提意见给我,一好的分类信息群发软件在手,舍我其谁。QQ896757558

GMT+8, 2024-5-19 03:11 , Processed in 0.239926 second(s), 55 queries .

宣传软件--信息发布软件--b2b软件广告发布软件

快速回复 返回顶部 返回列表