frage... ich starte irgendwann in meiner application einen system threading timer. wie kann ich denn jetzt später herausfinden, ob dieser auch läuft? timer.enabled is ja hier nicht 🙂
Hallo Taxi4110,
ich weiss auf deine Frage die Antwort nicht, aber ich wollte keinen neuen Beitrag eröffnen, weil ich auch eine Frage in dieser Richtung habe.
Ich habe einen Timer und einen Thread. Wobei im Timer-Event und in der Threadroutine eine identische Methode aufgerufen wird(private void bearbeitung(...)). Jetzt ist die Frage ob sie sich (Timer und Thread) behinderten würden oder ob sich das Timer-Event sdurchsetzt, wobei sich der Thread intern gestoppt wird.
Danke
Danke
amozi
Hallo Taxi4110,
tja, ich denke, das kannst du gar nicht herausfinden; höchstens selbst mitrechnen.
Hallo amozi,
da behindert sich nichts. Es gibt ja zwei Threads, den einen, in dem der Timer läuft und den explizit gestarteten Thread. Wenn der Timer tickt läuft 'bearbeitung' deshalb auch zweimal, einmal wegen des Ticks und einmal wegen des expliziten Threads.
Jedoch immer wenn man überhaupt mit Threads arbeitet (also unabhängig von Timern) muss man darauf achten, ob man ggf. Zugriffe auf gemeinsame Daten synchronisieren muss.
herbivore
Hallo,
ich habe dazu noch eine primitive Frage, worauf ich selbst keine Antwort habe. Wird bei einem Timer-Event die anderen (nebenbei) laufenden Threads angehalten oder werden die in kleineren Zeitintervallen quasi parallel durchgeführt. Ist wichtig, weil ich eine zeitkritische Hardwareabfrage damit realisiere.
Vielen Dank
Danke
amozi
Hallo amozi,
grundsätzlich laufen Threads parallel und es wird auch nichts extra angehalten. Auf einem Einprozessor-System gibt es natürlich keine echte Paralellität, da der Prozessor natürlich nur immer einen Thread zu einer Zeit ausführen kann. Auf mehr Prozessorsystemen gäbe es aber echte Paralellität.
herbivore