Es ist mal wieder so weit. DelphiSpeedUp 2.78 bringt neue Speed-Features und einen Bugfix mit sich.
Mich hat es immer schon genervt, dass bei größeren Projekten die Linker-Phase eine Ewigkeit dauert, wenn der Compiler eine detaillierte Map Datei erstellen soll, die man für den Stacktrace braucht. Ich habe da schon ungestützte Kommentare über die Verwendung von Bubblesort im Compiler an bestimmte Leute gerichtet. Schlussendlich kam heraus, dass die stricmp C-
RTL Funktion so Grotten schlecht programmiert ist (und das seit 1994), dass einem davon nur Übel werden kann. Die neue optimierte stricmp Funktion ist im Durchschnitt um den Faktor 110 schneller. Jetzt weist auch der Quicksort im Compiler nicht mehr das Verhalten eines Bubblesort auf.
Eine andere Änderung betrifft das Problem dass man bei größeren Projekten aufpassen muss wohin man seine Maus schiebt. Steht sie über einem Bezeichner, fängt der Compiler erstmal an auf der Platte herumzurattern. Ein Abbrechen ist hierbei nicht möglich. Bis jetzt. DelphiSpeedUp 2.78 erlaubt es nun den Kibitz-Compiler (CodeInisght) und den Background Parser (HelpInsight) mit der ESC Taste abzubrechen. Zudem kann HelpInsight auch durch einen MouseMove abgebrochen werden.
Einen Bug in der Gallileo
IDE behebt DelphiSpeedUp auch noch gleich. Der Background Parser kann unter gewissen Umständen (bei größeren Projekten vor allem) den MainThread blockieren. Das sollte mit Sicherheit nicht so ablaufen. Da dieser Bug nicht nur
RAD Studio 2007 sondern auch die anderen Jahreszahl IDEs betrifft habe ich ihn vom IDEFixPack nach DelphiSpeedUp portiert. Die beiden Plugins können natürlich gemeinsam verwendet werden. Hierbei wird der Bug von dem Plugin behoben, das als ersten geladen wird (was selbstverständlich DelphiSpeedUp ist).
Zitat:
Version 2.78 - 2008-07-19
=========================
- Improved: Packages are loaded a little bit faster (Delphi/C++ 2005, 2006, 2007)
- Added: Delphi Compiler's C
RTL optimizations (much faster map file creation)
- Added: Background Parser now stops if the main thread wants to do something with the compiler. (Delphi/C++ 2005, 2006, 2007),
- Added: CodeCompletion can be aborted by pressing ESC
- Added: HelpInsight can be aborted by moving the mouse or pressing ESC.
Download und Homepage
Download auf der ersten Seite the Threads
Download von CodeCentral