当计时器在屏幕上运行时,如何运行方法



首先 - 这是一个家庭作业。我应该超越我们所学到的知识,所以我想到了WPM控制台应用程序。我在计时器上进行了很多搜索,但这在我的头上也是一个学期。所以我找到了一种更简单的方法。问题是,我希望能够调用一些字符串并将用户打入其中,并最终运行计算以确定其单词每分钟。我读到使用task.factory.startnew应该让我运行两种方法。

class Program
{
    static void Main( string[] args )
    {
        Timer go = new Timer( );
        WordBank display = new WordBank( );
        Task.Factory.StartNew(go.timer1_Tick);
        Task.Factory.StartNew(display.LevelOneWords);
        Console.ReadKey( );
    }
}//end main
class Timer
{
public Timer()
{}
    public void timer1_Tick(  )
    {
        int seconds= 0;
        DateTime dt = new DateTime( );
        do
        {
            Console.Write("One minute timer: " + dt.AddSeconds(seconds).ToString("ss"));
            Console.Write("r");
            seconds++;
            Thread.Sleep(1000);                
        } while ( seconds< 60 );
    }
}//end Timer
class WordBank
{
public WordBank()
{ }
public void LevelOneWords()
{
        string easyWords = "the boy had so much fun at the park.";
        Console.WriteLine("nn", easyWords);
        Console.ReadKey( );
}

运行程序时,计时器启动一秒钟,然后立即用字符串替换。我是否使用task.factory.startnew错误地?

,而不是在键入时运行计时器(同时需要两个程序),而是尝试获取最初键入的时间,结束键入的时间,然后进行一些划分。即:

static void Main()
{
    // Displays WordBank
    WordBank display = new WordBank();
    var startTime = DateTime.Now;
    // Let them type for X amount of time
    var totalWords = TakeUserInputForXSeconds(45);
    var endTime = DateTime.Now;
    var wpm = totalWords / (endTime.Subtract(startTime).TotalMinutes);
}

对于toteuserinputforxseconds方法,我会查看本文中的信息:15秒后停止运行代码

相关内容

  • 没有找到相关文章

最新更新