You cannot log them out in anyway while on a call. Yes best to use Make Busy or even group presence removal.
Now as for queued calls before they go in make busy, I don't actually know.
In theory the calls will stayed queued unless you mark your agent group to NOT queue calls when no agents are available. Again, even with that configured to NOT queue calls, I'm not sure what will happen to calls that are already queued.
You could off course have an interflow timer. Once the timer expires, you can send the call where you like. You could also use queue schedule to open and close queues in addition to agents removing themselves.
***EDIT*** I assume you are using MiCC.