Use shared pointers to hold the process in ProcessMonitor