public Inferior CreateThread(int pid, bool do_attach)
{
Inferior inferior = new Inferior (
thread_manager, process, start, breakpoint_manager,
error_handler, address_domain);
inferior.child_pid = pid;
inferior.signal_info = signal_info;
inferior.has_signals = has_signals;
inferior.target_info = target_info;
inferior.exe = exe;
inferior.arch = inferior.process.Architecture;
if (do_attach)
inferior.Attach (pid);
else
inferior.InitializeThread (pid);
return inferior;
}