2016-10-19 4 views
1

私はそれを行う方法を理解しようとしていますが、コンソールがハイと言うように1分から60000ミリ秒と言います。xミリ秒後にコンソールに何かを印刷します

私がこれまで持っているすべては

System.Timers.Timer timer = new System.Timers.Timer(60000); 
timer.Start(); 

あるしかし、私はタイマーが行われたときにそれを作る方法がわからない、それが何かを行います。

+0

「Elapsed」イベントを登録します。例については、[documentation](https://msdn.microsoft.com/en-us/library/system.timers.timer(v = vs.110).aspx)を参照してください。 – adv12

+0

他がすべて失敗した場合 – pm100

+0

TimerクラスにはTimerElapsedイベントがあります。購読し、必要な機能を実装します。 –

答えて

3

elapseイベントを使用できます.60000msが経過するとイベントがスローされます。経過イベントの例:

class Program 
{ 
    static void Main(string[] args) 
    { 
     System.Timers.Timer timer = new System.Timers.Timer(60000); 
     timer.Elapsed += new System.Timers.ElapsedEventHandler(elapse); // subscribing to the elapse event 
     timer.Start(); // start Timer 
     Console.ReadLine(); // hold compiler until key pressed 

    } 

    private static void elapse(object sender, ElapsedEventArgs e) 
    { 
     Console.WriteLine("Hy"); 
    } 
} 
0

または

void Main() 
{ 
var t = new System.Threading.Timer((s)=>Console.WriteLine("Hi"),null,0,60000); 
Console.ReadLine(); 
} 
0

あなただけ(タイマーがx秒ごとに実行されます)一度書き込みをしたい場合は、System.Threading.Thread.Sleepを使用することができます。

System.Threading.Thread.Sleep(60000); 
Console.WriteLine("something"); 
0

あなたがしたいことは、タイマーがあらかじめ定義された時間を経過したときにコンソールに書き込むイベントを作成することです。

これは、次のように行われます:あなたのタイマーを作成することにより、

スタートし、60年代にそれを設定します。

var timer = new System.Timers.Timer(60000); //60seconds 

次の時間が経過したときにトリガされるイベントの作成:

private static void MyEvent(object sender, ElapsedEventArgs e) 
{ 
    Console.WriteLine("Hello World"); 
} 

次に、タイマーをそのイベントにバインドします。

timer.Elapsed += MyEvent; 

これは、実際にタイマーが実際に起動してからタイマーが経過すると(タイマーが開始してから60秒経過すると)、「MyEvent」というイベントが呼び出され、コンソール。

は最後にタイマーを起動

timer.Start(); 

をトリガし、コンソールに書き込みをしても待ちます。

関連する問題