Was heisst violatile genau?



  • Hallo,

    Kann mir jemand sagen was "violatile" genau bedeutet? Bitte einfach und verständlich, weil <komische> akademische Erklärung finde ich online und in meinen Büchern. Vielen Dank.

    Euer Toma][sO!



  • "violatile" gibt es nicht 😃 Wenn du "volatile" meinst - das bedeutet, daß die entsprechende Variable sich auch außerhalb des Programmflußes ändern könnte (z.B. durch ein anderes Programm, das auf diese Variable zugreifen kann). Technisch hat das Auswirkungen auf mögliche Optimierungen:

    int i;
    ...
    x = i;
    y = i;
    

    (der Compiler kann feststellen, daß das Programm den Wert von i zwischen den Zuweisungen nicht ändert, also kann es ihn in ein Register packen und so den Ablauf beschleunigen. Bei einer 'volatile' Variablen muß er davon ausgehen, daß "jemand anderes" zwischen den Zuweisungen den Wert ändert - und ihn für jede Zuweisung neu aus dem Speicher holen.



  • Danke...

    Hast du da auch ein praktisches Anwendungsbeispiel für?



  • Toma][sO schrieb:

    Hast du da auch ein praktisches Anwendungsbeispiel für?

    praktisch braucht man 'volatiles' in multithreading-umgebungen und bei interrupt-routinen.
    🙂


Anmelden zum Antworten