Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.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 - Fatal编程技术网

&引用;跳过;VB.NET中一段时间内的代码段

&引用;跳过;VB.NET中一段时间内的代码段,vb.net,Vb.net,我正在VB.Net中编写一段代码,当传感器改变其状态(即0到1或1到0)时,它将发送一个触发器来打开IP摄像头 我已经这样做了,但是我希望当传感器触发时,IP摄像头将触发,然后等待30秒,然后在传感器仍正常触发时再次触发。我的目标是防止IP摄像头快速触发 所有这些都是在后台工作人员中完成的。在做了一些研究之后,我发现我可以停止后台工作30秒,但这并不是我真正想要的,因为传感器也会停止。出于同样的原因,我也不想在这方面造成时间延迟 我想知道我是否可以在后台工作人员中“跳过”一段代码一段时间?例如:

我正在VB.Net中编写一段代码,当传感器改变其状态(即0到1或1到0)时,它将发送一个触发器来打开IP摄像头

我已经这样做了,但是我希望当传感器触发时,IP摄像头将触发,然后等待30秒,然后在传感器仍正常触发时再次触发。我的目标是防止IP摄像头快速触发

所有这些都是在后台工作人员中完成的。在做了一些研究之后,我发现我可以停止后台工作30秒,但这并不是我真正想要的,因为传感器也会停止。出于同样的原因,我也不想在这方面造成时间延迟

我想知道我是否可以在后台工作人员中“跳过”一段代码一段时间?例如:

    If SensorHasChangedStatus() = True Then

      'execute this bit of code once then skip over it for 30 seconds
      triggerCamera()
      'end of code to skip over

      'do other stuff

   End If
谢谢,
克丽丝,你查过计时器了吗

()

您可以创建一个具有间隔的计时器,并编写自己的事件处理程序,以便在每次达到该间隔时触发

因此,您可以触发您的相机,设置一个条件以跳过任何进一步的呼叫,然后启动计时器在30秒后反转该条件,允许再次触发相机

下面是一个基本示例,它每3秒触发一次,并只写入控制台

Sub Main()

    'Create a timer with interval of 3s
    Dim timer As New Timer(3000)

    'Set handler to trigger each interval
    AddHandler timer.Elapsed, New ElapsedEventHandler(AddressOf elapseHandler)

    'Start timer
    timer.Enabled = True

    'Demo loop
    While timer.Enabled
    End While

End Sub

'Handler
Public Sub elapseHandler(ByVal sender As Object, ByVal e As ElapsedEventArgs)
    Console.WriteLine("3s Passed")
    'Do stuff here every interval
End Sub