У меня есть служба VB. NET Windows, которая реализует таймер, который срабатывает каждую минуту. Этот таймер вызывает метод Execute. Этот метод создает экземпляр класса MyClass, а затем вызывает метод DoWork этого класса. В методе DoWork я проверяю, существует ли список myStaticList. Если список stati c не существует (не инициализирован: ничего), тогда я создаю список stati c и сохраняю некоторые параметры. Если список stati c существует, я читаю значения в нем, чтобы выполнить некоторую работу. Мне нужно, чтобы список myStaticList сохранялся между новым экземпляром MyClass. Как мне это сделать? Ниже приведен фрагмент кода.
Public Class MyService
Protected Overrides Sub OnStart(ByVal args() As String)
Dim serviceTimer As New Timer
serviceTimer.Interval = 60000
AddHandler serviceTimer.Elapsed, AddressOf OnTimedEvent
serviceTimer.Enabled = True
End Sub
Private Sub OnTimedEvent(ByVal source As Object, ByVal e As ElapsedEventArgs)
Dim serviceTimer As Timer = source
Try
serviceTimer.Stop()
Me.Execute()
Catch ex As Exception
' Do something...
Finally
serviceTimer.Start()
End Try
End Sub
Private Sub Execute()
Dim p As New MyClass()
p.DoWork()
End Sub
End Class
Public Class MyClass
Static myStaticList As List(Of MyAnotherClass)
Public Sub DoWork()
' Do the work
If IsNothing(myStaticList) Then
' Create and do something with myStaticList, store values, etc.
Else
' Do something with my existing myStaticList, read values and do something
End If
End Sub
End Class