Quando un'app per iOS dovrebbe creare una nuova sessione NSURL rispetto a riutilizzarne una esistente?

7

Sto migrando l'app del mio team per usare NSURLSession invece NSURLConnection a causa delle numerose API ormai deprecate nella famiglia NSURLConnection di classi e protocolli. Come parte di ciò, dobbiamo decidere con quale frequenza l'app deve creare una nuova sessione rispetto alle sessioni di riutilizzo esistenti.

In base alla documentazione di Apple, ai video WWDC e al buon senso, non è una buona idea creare una nuova sessione per ogni nuova richiesta di URL. Purtroppo, la documentazione di Apple non dice se ci sarebbero degli effetti negativi nel fare questa memoria, CPU o qualcos'altro.

In base alle esigenze della mia applicazione, che includono il lavoro di esecuzione sia quando l'app è in primo piano, sia quando è in background, potrei in teoria avere solo poche sessioni nell'app in quanto ci sono diverse configurazioni di sessione. L'avvertenza è che le sessioni non in background dovranno probabilmente essere cancellate quando l'app entra in background e re-inizializzate quando entra in primo piano.

Sei a conoscenza di best practice o raccomandazioni per quando un'app deve creare una nuova sessione o riutilizzare quelle esistenti? So che la risposta standard sarebbe "specifica per l'app", quindi forse una domanda migliore è "quando non è consigliabile creare una nuova sessione"?

    
posta RuslanD 15.03.2017 - 23:24
fonte

1 risposta

2

Utilizza un NSURLSession per configurazione. Ciò significa che la maggior parte delle chiamate a un singolo server passerà attraverso la stessa sessione.

    
risposta data 03.12.2017 - 12:55
fonte

Leggi altre domande sui tag