public ExecServerRemote(string executablePath, bool trackingServer, bool cachingAppDomain) { // TODO: List of native dll directory is hardcoded here. Instead, it should be extracted from .exe.config file for example shadowManager = new AppDomainShadowManager(executablePath, new[] { IntPtr.Size == 8 ? "x64" : "x86" }) { IsCachingAppDomain = cachingAppDomain }; upTime = Stopwatch.StartNew(); if (trackingServer) { trackingThread = new Thread(TrackExecutablePath) { IsBackground = true }; trackingThread.Start(); } }