Ik vraag me af waarom ik de app heb geblokkeerd toen ik [NSUbiquitouskeyValueStore synchroniseer]

Soms stopt het na enkele minuten geleden met bevriezen, soms wacht ik 10 minuten en stop dan geforceerd. Wanneer ik stop en kijk in thread-aanroepen, zie ik de semafoor-trap van de NSUbiquitouskeyValueStore _forceSynchronize-methode.

1
Wat probeer je precies te redden met NSUbiquitousKeyValueStore?
toegevoegd de auteur self, de bron

2 antwoord

Dit is wat Apple zegt:

De NSUbiquitousKeyValueStore -klasse biedt een programmatische interface voor het opslaan van kleine hoeveelheden configuratiegegevens in iCloud. U gebruikt deze klasse om informatie te synchroniseren tussen instanties van uw toepassing die worden uitgevoerd op verschillende apparaten die eigendom zijn van dezelfde gebruiker. Deze klasse moet worden gebruikt om niet-kritieke gegevens, zoals voorkeuren, te delen tussen exemplaren van uw toepassing. U moet het niet gebruiken om gegevens op te slaan die centraal staan ​​in het gedrag van uw toepassing.

Deze klasse is bedoeld voor het opslaan van slechts kleine hoeveelheden gegevens met behulp van de objecttypen objectlijst: NSNumber, NSString, NSDate, NSData, NSArray of NSDictionary . U kunt deze gegevens gebruiken om een ​​meer naadloze ervaring voor de gebruiker te creëren. Een tijdschrifttoepassing die op meerdere apparaten wordt uitgevoerd, kan bijvoorbeeld bevatten welke editie van het tijdschrift wordt gelezen en welke pagina de gebruiker momenteel leest. Gebruik de sleutel/waarde-opslag niet om algemene applicatiegegevens of gegevens op te slaan waarvoor regelmatig updates nodig zijn. De totale hoeveelheid beschikbare ruimte in de sleutel/waarde-opslag van uw toepassing is beperkt tot 1 MB. (Er is ook een limiet per sleutel, die momenteel is ingesteld op 1 MB en een maximum van 1024 sleutels is toegestaan.) Als u probeert gegevens te schrijven die deze quota overschrijden, mislukken de schrijfpogingen en de oude waarden (indien elke) blijft op zijn plaats.

0
toegevoegd

Meerdere vragen:

  1. staat het in de simulator, het apparaat of in OS X?
  2. Heeft u fouten ontdekt terwijl u uitzonderingen probeerde op te sporen? (of meer in het algemeen: heb je gecontroleerd of er geen uitzondering was)?
  3. tenslotte: kun je de volledige backtrace van de hang plaatsen?
0
toegevoegd