Christian Kruse: Zeiger Wettrennen

Beitrag lesen

Hallo pl,

Nun hab' ich mir gedacht, warum nicht gleich mehrere Zeiger auf die Liste loslassen. Gedacht getan und ich bin bereit zu schwören, das geht jetzt flotter.

Nicht schwören. Messen.

Aber ich habe da so meine Zweifel: Rennen die wirklich zur gleichen Zeit los? Immerhin stehen die Funktionsaufrufe ja untereinander und es ist einunddieselbe Funktion.

Wenn du keinen Mechanismus zur Parallelisierung eingebaut hast (etwa Threads, da du ja C programmierst), ist das äusserst fraglich. Es ist prinzipiell möglich, dass der Prozessor da optimiert und in einer zweiten Pipeline schonmal das Ergebnis des zweiten Funktionsaufrufs gleichzeitig berechnet, das ist aber dann eine Optimierung, die die CPU nur unter bestimmten Umständen machen kann. Darauf verlassen würde ich mich nicht. Und für wahrscheinlich halte ich das hier auch nicht.

Soll ich da vielleicht mehrere Funktionen bereitstellen, bringt das was?

Nein. Du brauchst dann Nebenläufigkeit, etwa in Form von Threads. Aber Vorsicht, das bringt eine ganze Menge eigener Tücken mit sich.

LG,
CK