I'd be interested to hear other comments on this, but here's how I do it. As background - my role means I typically have quite large slabs of time in the same context ('work') with only a modest amount of time in meetings/appointments (ie, calendar items).
I aim to use the GTD prioritisation steps to at least guide me - that is, in descending order: context, time, energy, priority. That said, at work, I'm in the one context, which typically makes up about 75% or more of my NAs. In terms of time - this is usually not a barrier, as I'll frequently have 4-6 hour windows that are uncommitted. Therefore it comes down to energy (which I overlay 'motivation' on) and priority.
Practically, I typically print off my context-filtered NA list each day, and flag those items that I expect I will have energy/motivation for, along with those that have are the highest priority, and get going on them. There are usually maybe 2-3 items that are absolute 'must do' on any given day but the majority aren't, but if I see something there for a number of days at a time, my focus draws to it more and more until I get it done.
Beyond that - it then comes back to the weekly review process, and the check-in on how each project is going, particularly the long term projects. This very much helps with gauging priority around NAs.
Hope that is helpful!
Do, or do not. There is no try.
Yoda
Bookmarks