public SingleSteppingEngine(ThreadManager manager, Process process, ProcessStart start) : this(manager, process) { inferior = Inferior.CreateInferior (manager, process, start); if (start.PID != 0) { this.pid = start.PID; inferior.Attach (pid); } else { pid = inferior.Run (); } manager.AddEngine (this); }
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; }