sto avendo problemi con il seguente avviso:avvertimento Core Animation cancellato filo con CATransaction impegnati
Core Animation: avvertimento, filo cancellato con CATransaction non impegnati; imposta CA_DEBUG_TRANSACTIONS = 1 in ambiente per registrare i backtrace.
Sto utilizzando un oggetto NSOperation per eseguire alcuni calcoli, una volta completato invia un messaggio a AppDelegate che nasconde una barra di avanzamento e visualizza alcuni pulsanti. Se commento nuovamente il messaggio all'AppDelegate, l'avviso scompare, ma la barra di avanzamento rimane ovviamente visibile e animata.
Sto utilizzando xCode 4.4.1 e OSX 10.8.1, tuttavia, quando compilo ed eseguo il codice utilizzando la stessa versione di xCode su OSX 10.7.4, non ricevo l'avviso e il codice viene eseguito come previsto.
L'impostazione della variabile di ambiente CA_DEBUG_TRANSACTIONS = 1 mostra il backtrace proveniente da un messaggio setEnabled di NSControl in AppDelegate.
La risposta probabilmente mi sta fissando in faccia ma forse ho bevuto troppo caffè!
Ho giocato un po 'oggi con questo. Sospetto che il problema è che NSOperation viene completato prima che CoreAnimation abbia finito con il ridisegno degli elementi dell'interfaccia utente. Il backtrace ha mostrato il metodo originariamente chiamato da NSOperation. Ho provato a implementare una NSNotification da NSOperation per dire all'AppDelegate che il calcolo è completo, sperando che questo significherebbe che NSOperation può essere rilasciato senza influenzare CoreAnimation, tuttavia l'avvertimento si verifica ancora ma questa volta l'origine è CoreFoundation? – Milly
In entrambi i casi il programma sembra funzionare come previsto e l'avviso viene visualizzato solo quando è in esecuzione su OS 10.8.1 o 10.8.2 – Milly