很明显:例如,想象一下我的表格中的一个按钮.当用户单击该按钮时,某些void方法应在30秒后运行.
将有一个带有DoAfterDelay两个输入参数的void方法.第一个是要做的方法(使用委托),另一个是时间间隔.所以我会:
public delegate void IVoidDelegate();
static void DoAfterDelay(IVoidDelegate TheMethod, TimeSpan Interval)
{
// *** Some code that will pause the process for "Interval".
TheMethod();
}
Run Code Online (Sandbox Code Playgroud)
所以,我只需要一段代码来暂停特定时间间隔的过程.到目前为止,我使用此代码执行此操作:
System.Threading.Thread.Sleep(Interval);
Run Code Online (Sandbox Code Playgroud)
但是这段代码对我没有好处,因为它会停止整个过程并冻结程序.我不希望程序卡在DoAfterDelay方法中.这就是为什么Thread.Sleep没用.
所以有人可以提出更好的方法吗?当然我已经搜索过了,但我发现的大部分解决方案都是基于使用计时器(比如这里).但是使用计时器是我最后的意见,因为该方法应该运行一次并且使用计时器会使程序混淆读取.所以,如果有的话,我正在寻找更好的解决方案.或者我可能必须使用计时器?
我想我必须玩线程,但不确定.所以我想知道是否有人可以指导我找到解决方案.提前致谢.
我正在编写一个程序,必须记录启动记事本等过程的时间.我认为创建一个每秒检查所有进程的Timer是很好的.但我认为它会减慢用户的计算机速度.有没有更好的方法呢?
家伙.
我想在我的应用程序中使用Windows RASDIAL连接到VPN.
我正在使用这个cmd命令:
rasdial a-1 username pass
Run Code Online (Sandbox Code Playgroud)
我只是想知道,如何在此命令中为下次连接保存密码?
谢谢.
如你所知,当我们使用通常的画线方法时,我们使用这样的代码(我不是在谈论特定的编程语言,我只是在谈论我们做什么。):
line(point1,point2)
Run Code Online (Sandbox Code Playgroud)
或类似的东西。
相信你已经看到,当我们用这些常用的方法画对角线时,线条不会是平滑的。例如,如果您进入 Windows Paint 并将线宽设置为最小,然后尝试绘制对角线,您将看到线条中的中断。但是,在Photoshop、Corel DRAW等某些程序中,当您绘制对角线时,它非常平滑,您看不到断裂。如果您仔细观察像素,您会发现导致这种情况的原因:
我知道浅色像素会导致平滑度。
好的,你能告诉我需要什么算法才能做到这一点吗?
简单地说,请。