Uno dei commenti su questo thread: Checking condition and calling continuous method with periods of delay unity, ha detto che:C# Perché non dovrei mai usare le coroutine?
Mai mai mai usare coroutine. Insegnano cattive abitudini dal punto di vista di uno sviluppatore C# e porteranno a un linciaggio se si prende un normale lavoro C#
La mia domanda è, perché è questo? È solo in Unità o in generale? I campioni di realtà virtuale ufficiali di Unity https://www.assetstore.unity3d.com/en/#!/content/51519 li utilizzano molto pesantemente (in particolare l'esempio del flyer) invece di Invoke o Invoke Repeating, anche questi progetti di esempio sono stati rilasciati di recente.
Ciao Martin, oltre alla spiegazione di Cory, semplicemente *** per principianti *** nel 99% dei casi l'unica ragione per cui la persona usa una coroutine è, incredibilmente semplicemente, che non si rendono conto che esiste un Invoke e InvokeRepeating chiama *** o in secondo luogo *** semplicemente non sanno della chiamata Update ***, in Unity. è onestamente solo così semplice. Nota che (se sei un esperto) devi *** usare Invoke/Repeating dove appropriato, e comprendi pienamente che l'aggiornamento e un Coroutine *** sono la stessa cosa ***. – Fattie
Per fare qualcosa di analogico, è un po 'come l'operatore "++" in c. (a) è una pessima idea, la peggiore idea in ingegneria del software (b) di 1000 principianti hobbisti, forse 2 hanno idea di cosa significa, la differenza tra ++ a e a ++ e altre sottigliezze (c) * sicuro *, a volte gli esperti lo usano come una sorta di stenografia per indicare un algoritmo o simili. – Fattie
(Si parla di "unity's lol samples", tutti i docu di unit e samples sono oltre una battuta, una leggenda del settore in inutilità.Nota anche che questo è un campione * di realtà virtuale *, per carità: 99,999% di * beginner * domande relative a "coroutines!" sono come segue: http://stackoverflow.com/a/35807346/294884) – Fattie