correct event sequence on process detach

Hello all,

The following question came up while fixing up handling of process detach.

when detaching from a running process, on some platforms LLDB needs to
stop it first. Is this stop something that should be hidden from the
public view or not?

I.e. if the process state is Running, and I do a process.Detach(),
what is the correct sequence of public state transitions one should
a) Running -> Detached ?

b) (Running -> Stopped -> Detached) or (Running -> Detached),
depending on whether the platform performs the maintenance stop?

My feeling is it should be a), but I wanted to double check first.


I am fine with case "a".