Best way to get back in sync after a live_loop dies?

Using the sync: opt of live_loop makes this pretty easy.
If you want them to both be synced together from the beginning anyway, then it’s simple to add it like so: live_loop :loop2, sync: :loop1 do...
This will synchronise them once when :loop2 starts, and they will play on independently from then on.

Keep in mind that syncing threads/loops will only catch a cue that happens after they have started waiting. In the case of live_loop :loop2, sync: :loop1 do - since :loop1 and :loop2 are started at the same time, :loop2 waits for the next time :loop1 sends out its cue message to let the loop continue - meaning :loop2 will start playing sound 0.5 beats after :loop1, but synchronised in time with it.

(This has been discussed at length elsewhere in the forum if you want further information behind the syncing mechanism - see Live loops Sync questions :-) for details).