TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

<< Back to VBNET

VB.NET Timer Examples

Monitor processes with the Timer type, and the ElapsedEventArgs argument, from the System.Timers namespace.
Timer. This class lets us call a subroutine every several seconds. We must construct a Timer instance and then add handlers to it.
Using the ElapsedEventHandler, we can specify a subroutine to perform the maintenance or updating code. We call Start, and use ElapsedEventArgs and SignalTime.Sub
First example. Here we create a new Timer with its constructor—we specify an interval of 200 milliseconds. We use the AddHandler operator to set the Elapsed event.Event

And: We use the method TimerElapsed (you can name it whatever you like) to run when the interval is reached.

SignalTime: The ElapsedEventArgs gives us access to SignalTime, which is a DateTime. It is the time the Timer was fired.

DateTime
VB.NET program that uses Timer Imports System.Timers Module Module1 Sub Main() Dim timer As Timer = New Timer(200) AddHandler timer.Elapsed, New ElapsedEventHandler(AddressOf TimerElapsed) timer.Start() ' Wait and run the timer. Console.Read() End Sub Sub TimerElapsed(ByVal sender As Object, ByVal e As ElapsedEventArgs) ' Write the SignalTime. Dim time As DateTime = e.SignalTime Console.WriteLine("TIME: " + time) End Sub End Module Output TIME: 4/3/2019 2:49:43 PM TIME: 4/3/2019 2:49:43 PM TIME: 4/3/2019 2:49:44 PM TIME: 4/3/2019 2:49:44 PM TIME: 4/3/2019 2:49:44 PM TIME: 4/3/2019 2:49:44 PM TIME: 4/3/2019 2:49:44 PM TIME: 4/3/2019 2:49:45 PM
Class example. This class has a Timer instance and a List instance. In the Start subroutine, we construct the Timer, specifying its interval as 3000 milliseconds (3 seconds).Shared

Next: We call the AddHandler operator to assign the Handler subroutine as the code that is executed every 3 seconds.

Finally: We set the Enabled property to True to start the Timer. It begins measuring time elapsed.

Class that uses Timer type: VB.NET Imports Microsoft.VisualBasic Imports System.Timers Public Class TimerTest Shared _timer As Timer Shared _list As List(Of String) = New List(Of String) ''' <summary> ''' Start the timer. ''' </summary> Shared Sub Start() _timer = New Timer(3000) AddHandler _timer.Elapsed, New ElapsedEventHandler(AddressOf Handler) _timer.Enabled = True End Sub ''' <summary> ''' Get timer output. ''' </summary> Shared Function GetOutput() As String Return String.Join("<br>", _list) End Function ''' <summary> ''' Timer event handler. ''' </summary> Shared Sub Handler(ByVal sender As Object, ByVal e As ElapsedEventArgs) _list.Add(DateTime.Now.ToString()) End Sub End Class
Notes, above class. We can use this code in an ASP.NET website. To start the Timer, the Start() subroutine shown above will have to be called during website startup.

And: The GetOutput() Function will show the DateTimes that were collected by the Timer.

ASP.NET example. First, we should add the Global.asax file. In the Application_Start handler, we call the TimerTest.Start subroutine that was declared in the class.

Then: In the Application_BeginRequest subroutine, we output the text of the List collected by the Timer.

Example Global.asax: VB.NET <%@ Application Language="VB" %> <script runat="server"> Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs) TimerTest.Start() End Sub Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs) Response.Write(TimerTest.GetOutput()) End Sub </script>
Notes, ASP.NET. When you first visit the website, the Timer is started. From this point on, the Timer will add a String to the List every 3 seconds.

Tip: Refresh the page occasionally and you will see the Timer is executing its Handler code.

Default.aspx: If you are starting with an empty ASP.NET website, you will want to add a Default.aspx page as well.

Info: Default.aspx will trigger the runtime to call the Application_Start and Application_BeginRequest handlers.

A summary. The Timer is an excellent way to maintain the data or caches in your website. And because it is separate from request handling, it will not cause slowdowns for visitors.
© TheDeveloperBlog.com
The Dev Codes

Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf