Affascinante ... semplicemente affascinante.
Disattiva "Compila con .NET Native tool chain" nelle proprietà Build dell'app principale UWP. Le librerie UWP non sembrano offrire l'opzione della catena degli strumenti nativa.
Stavo combattendo il problema del perché la mia applicazione di analisi dei file impiegava circa il doppio del tempo per eseguire (non creare) come build di rilascio che come build di debug. Completamente il contrario di quello che sarebbe dovuto succedere. Mi è anche capitato di notare il lungo tempo necessario per completare la build di rilascio, ma per il momento era un problema secondario.
Se si guarda la finestra di output durante una ricostruzione completa, si noterà che tutte le librerie che si avranno verranno create nel modo più rapido. Quindi l'app principale sarà quella che si impantana: MOLTO.
Controllare le proprietà di creazione per i progetti e si noti che solo l'app UWP principale ha l'opzione "Compila con catena di strumenti nativi .NET". Le librerie non ce l'hanno. Inoltre, per impostazione predefinita solo la versione di rilascio è abilitata. La build di debug no. Abbastanza sicuro, spegnilo nella build di rilascio e la build di rilascio inizia a completare alla stessa velocità della build di debug.
Quindi la stranezza della stranezza ... il mio build di rilascio dell'app UWP ora funziona circa del 10% più velocemente rispetto alla versione di debug quando veniva eseguito quasi due volte più lentamente.
Questo è tutto MOLTO contro-intuitivo. Una build nativa dovrebbe essere veloce, se non addirittura un po 'più veloce, rispetto alla build non nativa. Il compilatore in Visual Studio ha certamente l'opzione di mettere molto più duro lavoro per ottimizzare la build per il processore.
Mi chiedo se non è stato pubblicato altro sui problemi con gli strumenti di creazione nativi e se c'è una spiegazione. Il tempo di costruzione lento posso capire completamente se gli strumenti di costruzione stanno sgranocchiando molto più duramente cercando di ottimizzare per il processore nativo specifico. Tuttavia il fatto che il codice nativo funzioni molto più lentamente del codice non nativo è completamente contro-intuitivo. Non sembra logico che MSFT si sia preso la briga di rilasciare gli strumenti di compilazione nativi in tali circostanze, il che porta a chiedersi se gli strumenti sono stati usati in modo errato o se qualche altro malinteso è avvenuto.
Sono presenti componenti aggiuntivi nell'installazione VS? Hai provato a resettare la tua configurazione VS? È in esecuzione un anti-virus o un altro processo di background pesante? – Dai
"Piattaforma Windows universale" - Microsoft perde la trama ..... –
Ho scoperto che per la versione in uscita è necessario FOREVER ... –