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; }