achso, dann liegts wohl daran. benutze eine CPU mit 6 Cores / 12 Threads.
Aber warum ist dann kein Thread voll ausgelastet, wenn die gesamte Auslastung bei 8% ist ? Bei mir geht nicht nur ein Thread auf 100%, sondern alle ein bisschen, sobald ein script activ ist, das nur aus einer while schleife besteht.
Wird das durch Windows auf mehrere Threasds verteilt ?(Benutze Win7 Pro)
Nein Windows verteilt das nicht auf mehrere Threads.
Aber es gibt einen Mechanismus in Windows, welcher die Threads den virtuellen Kernen zuweist. Diese Zuweisung ist nicht permanent, sondern die Threads wechseln ständig und sehr schnell zwischen den verfügbaren Kernen. Grund dafür ist, das im Normalfall Hunderte oder Tausende Threads die CPU Kerne verwenden möchten, aber es kann immer nur ein Thread zur selben Zeit einen Kern verwenden. Wenn du 12 Kerne und 1000 Threads hast müssen die meisten warten bis ein Kern frei ist. Damit jeder Thread etwa gleich oft dran kommt rotieren die Threads permanent zwischen Wartemodus und einem der Kerne durch.
Der Thread läuft also bei einem 4 Kern Prozessor im Idealfall zu 25% der Zeit auf einem der 4 Kerne. Im Taskmanager schaut das dann so aus, als ob alle Kerne je zu 25% ausgelastet wären. In Wahrheit ist aber jeweils einer der Kerne zu 25% der Zeit zu 100% ausgelastet, die restlichen 75% der Zeit ist der Kern zu 0% ausgelastet. Stimmt natürlich nicht ganz, da noch hunderte andere Threads laufen und sich Zeit auf den Kernen sichern, daher starke Schwankungen im Taskmanager.
" oder verkündet traurig "sitze schon seit gefühlt 2 stunden dran
" und bekommt dann eine Fertiglösung präsentiert die letztlich nichtmal die eigentliche Aufgabe erfüllt (Datei löschen wenn sie existiert). Das ist aber nicht deine Schuld, sondern die Schuld des Fragestellers, welcher die Aufgabe nicht ausreichend beschrieben hat. Auch wenn ich null Ahnung von Autoit habe sollte man doch meinen, dass ich zumindestens formulieren kann was ich erreichen möchte.