随机间隔时间后的呼叫方法

asd*_*fjk 2 c#

我有5种方法,我需要在随机间隔(1到3秒)之后调用它们.说第一种方法在1秒后调用,然后第二种方法在2.3秒后调用,下一种方法在1.5之后调用.我使用定时器进行了跟踪

    Random rand = new Random();
    fortimerinterval1 = rand.Next(1000, 3000);
    mytimer1.Interval = fortimerinterval1; 
    mytimer1.Enabled = true;
    mytimer1.Start();
Run Code Online (Sandbox Code Playgroud)

但问题是,定时器间隔不会每次都改变.定时器间隔在第一次后保持不变.如何让它随机,以便每次定时器间隔改变.

小智 6

做这样的事情

Random rand = new Random();
Timer mytimer = new Timer();

private void button1_Click(object sender, EventArgs e)
{
    mytimer.Tick += new EventHandler(TimerEventProcessor);
    int fortimerinterval = rand.Next(1000, 3000);
    mytimer.Interval = fortimerinterval;
    mytimer.Enabled = true;
    mytimer.Start();
}

public void TimerEventProcessor(Object myObject, EventArgs myEventArgs)
{
    int fortimerinterval = rand.Next(1000, 3000);
    mytimer.Interval = fortimerinterval;

    System.Diagnostics.Debug.WriteLine(DateTime.Now);
}
Run Code Online (Sandbox Code Playgroud)