Długi czas pierwszego uruchomienia programu

0

Witam,
mam dość standardowy problem, znany zapewne większości forumowiczom.
Otóż programy, które tworzę mają "długi" start przy pierwszym uruchomieniu (po każdym restarcie Windowsa).
Każde następne uruchomienie programu jest już szybkie. Wiem, że jest na to jakiś sposób.
Czy ktoś zna prosty sposób na rozwiązanie tego problemu?

0

To normalne. Podczas pierwszego uruchomienia, do pamięci są ładowane wszystkie potrzebne bilbioteki i dlatego to tyle trwa. Nie znam żadnego sposobu żeby to przyspieszyć, co nie znaczy że takowy nie istnieje.

0

Skoro używasz bazy danych, to już znasz powód. W C# są dostępne dwie bazy danych. sdf i mdf(?) - jakoś tak(Somekind poniżej opisał o co chodzi dokładnie). I, CE jest spoko, bo nie zawiesza kompa jak się włącza program, a ta druga zawiesza. Nie wiem czemu tak to działa, ale tylko stwierdzam fakt... Poczytaj sobie, nie znam się na tym.

0
Jakub Baran napisał(a)

W C# są dostępne dwie bazy danych. sdf i mdf(?) - jakoś tak. I, sdf jest spoko, bo nie zawiesza kompa jak się włącza program, a ta druga zawiesza. Nie wiem czemu tak to działa, ale tylko stwierdzam fakt... Poczytaj sobie.

Ty chyba nie wiesz po pierwsze co to jest baza danych, po drugie z jakich baz można korzystać "w C#".
W skrócie: sdf to rozszerzenie plików dla baz SQL Server CE (prostej dllki dołączanej do aplikacji), mdf dla normalnego SQL Servera (zaawansowanego SZBD pracującego jako usługi systemowe). Oprócz tego można używać jeszcze dziesiątek innych SZBD. ;]

0

Jak już koledzy napisali, to normalne że pierwsze uruchomienie programu jest dłuższe.
Sprawdź to z jakąś dużą aplikacją, np. z Wordem.

pytanie tylko, ile to jest dla ciebie „długo”? Jeśli sekundę zamiast jednej piątej, to należy się z tym pogodzić. jeśli 60 sekund zamiast jednej - to coś jest nie tak z twoją aplikacją.

0

Uruchomienie tego programu trwa kilka sekund. Kiedyś słyszałem, że można to jakoś ominąć ładując "coś" do systemu lub do projektu. Chyba chodziło o jakieś biblioteki. Ale kompletnie nie znam tematu stąd moje pytanie.

0

Pierwsze uruchomienie aplikacji pisanych w .NET wymaga uruchomienia CLR i załadowania odpowiednich bibliotek, dlatego jest wolniejsze. Słyszałem plotki o tym, że usunięcie niepotrzebnych referencji z projektu albo kompilacja przy użyciu ngen może tu pomóc, ale nigdy tego nie testowałem.
http://msdn.microsoft.com/pl-pl/magazine/cc163630%28en-us%29.aspx
http://msdn.microsoft.com/pl-pl/magazine/cc163655%28en-us%29.aspx

1 użytkowników online, w tym zalogowanych: 0, gości: 1