Rumah > Artikel > pembangunan bahagian belakang > Pemasa dalam C#
Pemasa dalam C# ialah salah satu ciri terbaik yang terdapat dalam dunia pengaturcaraan. Pemasa memainkan peranan penting dalam pembangunan program perisian di kedua-dua pelayan dan pihak pelanggan. Ia digunakan terutamanya untuk mencetuskan peristiwa pada selang masa tertentu tanpa sebarang gangguan lain. Pemasa berfungsi di latar belakang kerana ia tidak mempunyai sebarang perwakilan visual. Oleh itu, kami boleh menggunakan objek pemasa apabila kami menyemak kod atau melaksanakan sebarang acara pada masa yang tetap kerana kami boleh menjadualkan urutan animasi dengan meningkatkan atau mengurangkan kelajuan masa dengan bantuan masa dalam C #.
Mari kita lihat sintaks mewakili pemasa dalam C#:
timer = new System.Timers.Timer(3000) ;
Di sini kami telah mencipta objek pemasa selama 3 saat. Selepas mencipta objek pemasa kita boleh menetapkan pemasa untuk acara berlalu selepas itu kita boleh memulakan pemasa melalui sintaks di bawah.
timer.Elapsed += OnTimedEvent ; timer.Enabled = true ;
Untuk memahami dengan tepat cara kerja, pelaksanaan dan kefungsian Pemasa dalam C # yang diberikan di bawah ialah contoh fungsi Pemasa yang dijelaskan.
Di bawah ialah contoh kod C# untuk menunjukkan kerja pemasa:
Kod:
using System ; using System.Timers ; class Timer_Example { public static void Main() { Timer newTimer = new Timer() ; newTimer.Elapsed += new ElapsedEventHandler(DisplayTimeEvent ) ; newTimer.Interval = 2000 ; newTimer.Start() ; while ( Console.Read() != 'q' ) { ; // we can write anything here if we want, leaving this part blank won’t bother the code execution. } } public static void DisplayTimeEvent( object source, ElapsedEventArgs e ) { Console.Write( " \r{0} " , DateTime.Now ) ; } }
Output:
Dalam kod di atas, kami telah mengisytiharkan kelas Timer_Example untuk menunjukkan fungsi asas dan kerja pemasa dalam C#. Selepas itu, kami mengisytiharkan pemasa baharu dengan memberi nama newTimer. Jadi menggunakan Pemasa baru ini kita memanggil fungsi berlalu dan Selang fungsi pemasa. Kami telah menetapkan nilai pemasa kepada 2 saat kemudian kami memulakan fungsi pemasa sehingga keadaan sementara berlaku. Sebaik sahaja kita memanggil DateTime.now skrin output akan memaparkan tarikh dan masa.
Kod:
using System ; using System.Timers ; public class Test_Timers { private static Timer timer ; public static void Main() { timer = new System.Timers.Timer() ; timer.Interval = 6000 ; timer.Elapsed += OnTimedEvent ; timer.AutoReset = true ; timer.Enabled = true ; Console.WriteLine( " Please enter any key to exit from the code anytime... " ) ; Console.ReadLine() ; } private static void OnTimedEvent(Object source, System.Timers.ElapsedEventArgs e) { Console.WriteLine( " Event : {0} " , e.SignalTime ) ; } }
Output:
Dalam kod di atas, kami telah mengisytiharkan kelas bernama " Test_Timers " di mana kami telah mengisytiharkan satu Pemasa statik peribadi bernama "pemasa" dan dalam utama statik awam kami telah menetapkan pemasa sama dengan pemasa baharu dengan selang masa 6 detik. Melalui kaedah onTimedEvent, kami boleh mencetak tarikh bersama-sama dengan masa yang kami teruskan mencetak status setiap 6 saat sehingga syarat itu berlaku. Seperti yang anda boleh lihat dalam output jurang antara kedua-dua acara dalam 6 saat dan ia akan terus berulang sehingga keadaan benar.
Kod:
using System ; using System.Collections.Generic ; using System.Timers ; static class DemoTimers { static Timer time ; static List <DateTime> output = new List <DateTime> () ; public static void Start() var timer = new Timer(5000) ; timer.Elapsed += new ElapsedEventHandler(Elapsed_time ) ; timer.Enabled = true ; time = timer ; } static void Elapsed_time( object sender , ElapsedEventArgs e ) { otuput.Add(DateTime.Now) ; } public static void PrintTimes() { if ( otuput.Count> 0 ) { Console.WriteLine( " TIMERS : " ) ; foreach ( var time in otuput ) { Console.Write(time.ToShortTimeString() + " " ) ; } Console.WriteLine() ; } } } class Program { static void Main() { DemoTimers.Start() ; while ( true ) { DemoTimers.PrintTimes() ; Console.WriteLine( " WAITING To Print" ) ; System.Threading.Thread.Sleep( 2000 ) ; } } }
Output:
Dalam kod di atas, anda dapat melihat kami menggunakan System.Collections.Generic, menggunakan kelas System.Timers supaya kami boleh menggunakan fungsinya. Kami mengisytiharkan satu kelas DemoTimers statik di mana kami mencipta pemasa statik dengan nama masa dan selepas itu, kami telah mencipta satu senarai statik juga dengan nama DateTime dan ia akan disimpan dalam output. Untuk mula menggunakan pemasa dalam kod kami, kami mencipta satu kaedah Mula () kerana kami menetapkan pemasa selama 5 saat kemudian kami menambah pengendali acara yang telah berlalu dan kemudian kami perlu menetapkan syarat itu benar.
Satu lagi kaedah dengan nama Elapsed_time di mana kita boleh menambah tarikh dan masa untuk setiap acara yang mungkin, ia akan membantu dalam mengetahui masa dan tarikh semasa untuk acara tersebut. Kemudian kami telah mengisytiharkan satu lagi kaedah bernama PrintTimes jenis void. Dengan bantuan kaedah ini, w boleh mencetak semua set masa yang direkodkan. Jika syarat ditambah dan ia akan terus mencetak PEMASA sehingga dan melainkan syarat itu benar. Kerana ia akan mencetak untuk setiap masa var dalam senarai output.
Akhir sekali, kami telah mencipta kelas yang dipanggil Program di dalamnya di mana kekosongan statik utama diisytiharkan kemudian kami memulakan kelas pemasa. Kami memanggil fungsi PrintTimes selepas setiap 3 saat kemudian jika keadaan berlaku, ia akan terus mencetak hasil selepas 3 saat f rehat antara setiap peristiwa yang berlaku.
dengan bantuan kelas pemasa, pengaturcara boleh menggunakan kod secara tetap dalam masa beberapa minit atau saat. Oleh itu, untuk memantau kualiti keseluruhan program pemasa digunakan untuk memantau program. Ia adalah kelas statik jadi ia tidak boleh mempunyai ahli contoh.
Atas ialah kandungan terperinci Pemasa dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!