Unless you’re running the Blueprint VM on a different thread, you will still be bound by the game thread tick.
However, Event Timers over long periods end up being more accurate than Delay loops because they do not require a Game Thread bound execution to start the next wait meaning your timer execution will always be ready to go on the next game thread tick and will already start up its next timer wait period.
However, on slow game threads, you will still experience time phasing, particularly on tight timers that are out of sync with the Game Thread.
Which brings us to a final optimization, having a musical timing that is synchronized with your game thread is probably your best bet. If you’re shooting for 60 or 90hz as your spec frame rate, then ensuring that your musical timing is compatible with those sync rates is probably the best thing you can do for your implementation.