Il mio programma wpf ha uno strano problema riguardante le prestazioni di avvio su computer diversi con le stesse specifiche. Un computer carica il mio programma meno di un secondo. Un altro computer con la stessa specifica carica 10+ secondi.Il programma WPF si avvia in modo super veloce su un computer ma molto lento su un altro
Con l'aiuto del profiler delle prestazioni di Visualstudio, noto che due computer caricano il programma in modo diverso! che è così strano
Il mio problema è fondamentalmente lo stesso di questo post: C# WPF Very slow application launch
Il profiler prestazioni del computer "fast" (intendo avviare il programma veloce) mostra che il programma inizia con System.Windows.Application. Esegui(), mentre quello "lento" indica che inizia con System.Windows.Application. RunInternal (...)
Con l'ulteriore "interno" il tempo di avvio è aumentato di 10 volte anche se due computer sono della stessa specifica e il codice sorgente è lo stesso. (In realtà, è semplicemente semplice file iniziale WPF mvvm)
Qualche idea?
'Run' chiama in' RunInternal', quindi penso che sia una falsa pista. –
Probabilmente questo [post SO] (http://stackoverflow.com/questions/7610009/wpf-warm-appdomain-startup-performance-application-runinternal-xamlreader-load) ti aiuterà. In realtà non è una risposta reale, ma illustra alcune misure su come l'avvio dell'applicazione può essere ottimizzato. – DHN
@KentBoogaart So Run chiama RunInternal. Ma sembra che quello lento stia chiamando direttamente RunInternal invece di chiamare Run() in prima persona. – user2127480