Thread Katastrophe Threads
(16 answers)
Opened by PerlNoob5 at 2018-09-06 11:19
Kommt halt drauf an, was die Aufgabe ist. Nicht immer lässt sich eine Arbeit einfach in mehrere Scripte aufteilen. Daher können threads durchaus sehr hilfreich sein.
Es ist halt nicht leicht, mit Threads korrekt zu arbeiten. In C++ hat z.B. Sean Parent das Ziel "No Raw Synchronization Primitives" ausgegeben. Einfach, weil man viel viel falsch machen kann. Also: möglichst irgendwelche High-Level-Funktionen nutzen. Ich denke, das Problem gilt genauso auch für Perl. Sobald man von selbst irgendwie lockt, wird es gefährlich. Bevor man mehr Rechenleistung auf ein Problem schmeißt, erstmal schauen, ob man nicht den Algorithmus verbessern kann! Ich weiß nicht, wie relevant das in einer Scriptsprache ist, aber ich konnte z.B. viele exp(x_i-y_j)-Berechnungen durch Vorberechnung von exp(x_i) und exp(y_j) und dann Nutzen der Division der vorberechneten Werte sehr viel Zeit sparen. Gibt es in Perl eigentlich sowas wie Promises und Futures? Oder ein Interface zu Intels TBB? Wie man schon sieht, ich mache zeitkritische Dinge eigentlich nicht in Perl ;-) |