public ProcessQuerierStrategy(IDebugClient debugClient, IDataReader dataReader, ClrRuntime runtime) { _isDispsed = false; _runtime = runtime; _dataReader = dataReader; _debugClient = debugClient; if (dataReader.GetArchitecture() == Architecture.Amd64)//Environment.Is64BitProcess { _unmanagedStackWalkerStrategy = new Unmanaged_x64_StackWalkerStrategy(_runtime); _threadContextStrategy = new ThreadContext_x64_Strategy(); } else { _unmanagedStackWalkerStrategy = new Unmanaged_x86_StackWalkerStrategy(); _threadContextStrategy = new ThreadContext_x86_Strategy(); } _unmanagedBlockingObjectsHandler = new UnmanagedBlockingObjectsHandler(_unmanagedStackWalkerStrategy); }
public UnmanagedBlockingObjectsHandler(UnmanagedStackWalkerStrategy strategy) { _unmanagedStackWalkerStrategy = strategy; }