flags in klassen

flotschie

Mitglied
hallo,

folgendes: eine von mir geschriebene klasse "auto" soll je nachdem, welche (zur Laufzeit erzeugte) Instanz von ihr (z.b. "auto1", "auto2", etc...) eine methode der Klasse aufruft, innerhalb dieser methode ein flag setzen, um einen anderen Thread weiterlaufen zu lassen.

Die flags sind global so definiert:

Public _flag1 As New AutoResetEvent(False)
Public _flag2 As New AutoResetEvent(False)
Public _flag3 As New AutoResetEvent(False)

Also sagen wir ich habe die klasse "Auto" erzeugt und die Methode "run":

Public Class Auto
Public sub run()
Do
<Code>
_flagx.set() ' <-- hier soll je nachdem welche instanz die methode aufgerufen hat, das entspr. flag gesetzt werden
Loop
End Class


Ich erzeuge instanzen:

Dim auto1 as New Auto
Dim auto2 as New Auto
Dim auto3 as New Auto

..und rufe die run-methode auf

auto1.run()
auto2.run()
auto3.run()

Nebenbei habe ich noch 3 Subs die je nachdem, welche flags aufgerufen wurden, weitermachen sollen:

Public Sub eins()
_flag1.waitone()
<Code>
end sub


Public Sub zwei()
_flag2.waitone()
<Code>
end sub


dasselbe mit Public Sub drei() etc.....

hoffe ich habe mich verständlcih ausgedrückt, es wäre sehr nett wenn jemand einen beitrag dazu hätte...
 
flag als parameter mitschicken...

...wie wäre es....wenn man im methoden aufruf das flag als parameter mitschickt?

Auto1.run(_flag1)

?

und in der Klasse dementsprechend die methode run anpasst:

Public Sub run(ByVal obj As Object)
Dim flagg As System.Threading.AutoResetEvent
flagg = obj

geht das? Morgen? ;-)
 
Zurück