2010-05-23 11 views
6

Pracuję z Delphi 2009 Pro i właśnie próbowałem dowiedzieć się, dlaczego kodowanie jest tak wolne w mojej konfiguracji. Za każdym razem, gdy wywoływane jest uzupełnianie kodu, IDE blokuje się do 30 sekund, co naprawdę przerywa jakikolwiek przepływ pracy.
Podczas pracy z BDS 2006, kodowanie było niewiarygodnie szybkie w porównaniu do Delphi 2009.
Po przeczytaniu this post wydaje się normalne dla Delphi 2009, ale samo wyłączenie automatycznego uzupełniania kodu nie jest czymkolwiek, co chcę zrobić.Czy szybkość kodowania została poprawiona w Delphi 2010?

Moje pytanie brzmi:
Jeśli przejdę na Delphi 2010, czy będę miał tę samą wolną prędkość do uzupełnienia kodu lub czy został ulepszony do punktu, który może być użyty?

EDIT:
znalazłem główny problem, dlaczego mój IDE było tak reaguje. Użyłem pliku MSHTML_TLB.pas, utworzonego za pomocą funkcji "Importuj typelibrary", która wynosi 16 MB kodu. Ten plik, który jest skanowany w celu ukończenia kodu, zatrzymał IDE nawet na 30 sekund. Bez tego pliku znajdującego się w projekcie powiedziałbym, że uzupełnianie kodu jest tak szybkie jak w poprzednich wersjach.

+1

30 s? Czy to normalne? Na moim komputerze nigdy nie zaobserwowałem żadnego opóźnienia, nawet w bardzo dużych i skomplikowanych projektach. –

+0

To zadziałało dla mnie z BDS2006 i zawsze czytałem, że to było bardzo wolne IDE. Delphi 2009 jest szybszy, pewny, po prostu nie w odniesieniu do uzupełniania kodu. – Holgerwa

+0

D2010 jest dla mnie szybszy. Jednak najczęściej używam C++ - nie jestem pewien, czy jest szybszy po stronie Delphi. –

Odpowiedz

5

Niestety, nie. W Delphi 2010 nie było już tak szybko.

+0

Szkoda, używam D2007 i regularnie zawieszam się na około 30 sekund po zakończeniu kodu. Również rzeczy takie jak przy pisaniu nazwa-metody i typie ("mogą zamarzać przez długi czas" Projekt ma około 1,5 miliona linii źródłowych i setki plików źródłowych Używam D2007 i czasami myślałem o stworzeniu nowy projekt i dodawanie pliku źródłowego jeden po drugim, aby go oczyścić i przyspieszyć. Ale może się to nigdy nie zdarzyć z powodu braku czasu, a może nawet nie poprawić wydajności ... –

+2

Tak, rzecz otwartego nawiasu jest szczególnie Możesz wyłączyć to w menu Narzędzia-> Opcje-> Opcje edytora-> Wgląd w kod, a następnie poda ci tylko pomoc parametru, jeśli wywołasz go za pomocą CTRL-SHIFT-SPACE. –

6

Spróbuj CnWizards http://www.cnpack.org/showlist.php?id=39&lang=en

CnWizzards jest darmo open source plugin dla Delphi IDE, dodaje kilka usprawnień do IDE, jak, kreatora messagebox statystyki kod, struktura kodu podświetlenia, ulepszona uzupełniania kodu i wiele innych ...

+0

-1 za bezużyteczne łącze do strony nieopisujących odnośników do pobrania. To może być cokolwiek. Może się przydać, może być NSFW, może być złośliwym oprogramowaniem, nie ma o tym pojęcia. –

+1

Wiem, że cnWizards nie jest złośliwym oprogramowaniem. Jest to przydatny dodatek do Delphi. –

+0

Dałem to -1, ponieważ generalnie nie lubię rozwiązań firm trzecich, * szczególnie * jeśli odpowiedź w żaden sposób nie odpowiada na pytanie: Czy D2010 jest szybszy od D2009? –

2

Nie jestem pewien, czy w D2010 jest wolniejszy niż w D2006.

Próbowano

  • oczyścić zastosowania klauzuli
  • upewnić się, że ścieżka (lib, wyszukiwania) są krótkie i bez przestarzałych linki katalogi/sieciowych
  • wyraźnie obejmują wszystkie używane jednostki w dpr
  • zmienić kolejność użycia klauzuli?

Chodzi o to, aby kompilator "w locie" dotarł na pozycję w kodzie tak szybko, jak to możliwe.

+0

To jest delphi w porównaniu z delphi, więc to jest już porównywane z tymi samymi ustawieniami dla D2006 i d2009/d2010. Dzielę się problemem OP z moim d2009. Czasami blokuje się tam, gdzie d2006 nie ma, lub nie jest tak długi –

+0

gwarantujesz, że masz ten sam projekt z tymi samymi zastosowaniami i tymi samymi ścieżkami? Z mojego doświadczenia wynika, że ​​przejście na nowszą wersję Delphi przebiega często z innymi modyfikacjami, które rzadko są pozbawione efektów ubocznych. –

2

Zwykle miałem ten problem zarówno na moim laptopie, jak i podczas korzystania z dysków sieciowych - mógłbym zawiesić się na maks. 30s przy pierwszym uruchomieniu kodu.

Aby temu przeciwdziałać, przeniosłem pliki, nad którymi pracowałem, na lokalny szybki dysk, a problem prawie zniknął - nadal miałem przerwę, ale tylko na sekundę lub 2 zamiast 30!

Powiązane problemy