睡眠功能Visual Basic

Jef*_*lak 12 vb.net sleep

在Visual Basic中是否有一个简单的睡眠函数,它不涉及线程.

类似的东西存在于:C: sleep(1);

我们也试过这段代码:

Declare Sub Sleep Lib "kernel32" (ByVal milliseconds As Long)
' pause for 5 seconds
Sleep 5000
Run Code Online (Sandbox Code Playgroud)

......但它没有用.它给了我这个错误:

检测到PInvokeStackImbalance消息:调用PInvoke函数'Ganzenbordspel!Ganzenbordspel.Spel :: Sleep'使堆栈失衡.这很可能是因为托管PInvoke签名与非托管目标签名不匹配.检查PInvoke签名的调用约定和参数是否与目标非托管签名匹配.

小智 29

这个很简单.

Threading.Thread.Sleep(3000)
Run Code Online (Sandbox Code Playgroud)


Bra*_*rad 17

由于您在询问.NET,因此应将参数更改LongInteger..NET的Integer是32位.(经典VB的整数只有16位.)

Declare Sub Sleep Lib "kernel32.dll" (ByVal Milliseconds As Integer)
Run Code Online (Sandbox Code Playgroud)

真的,管理方法并不困难......

System.Threading.Thread.CurrentThread.Sleep(5000)
Run Code Online (Sandbox Code Playgroud)

这样做时要小心.在表单应用程序中,您阻止消息泵,什么不是,使您的程序看起来已被挂起.很少是sleep一个好主意.