gpt4 book ai didi

c# - WinForms中的计时器刻度事件和线程

转载 作者:行者123 更新时间:2023-12-03 13:20:57 25 4
gpt4 key购买 nike

我有一个名为SendTimer的计时器,间隔为30秒。

protected void SendTimer_Tick(object sender, eventArgs e)
{
SendTimer.Enabled = false;

TransferMoney();

System.Threading.Thread.Sleep(15000);

GenerateTransactions();

SendTimer.Enabled = true;
}

我希望壁虱事件可以同时被一个线程正确调用。不能同时使用2个线程。但是,正如我在LOGS中看到的那样,它似乎是在另一个线程正在运行时被一个线程调用的。任何的想法?因为我分别禁用和启用它。

最佳答案

Windows窗体Timer根据定义是单线程的。它与多线程无关,因为它是通过WM_TIMER消息经过的,并被发送到当前的GUI线程消息队列中。

所以这:

NOT by 2 threads simultaneously



是不正确的,因为即使您有多个线程,WinForms Timer也与此无关。

关于c# - WinForms中的计时器刻度事件和线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12777039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com