Пример #1
0
        public async Task <string> CreateDumpAsync(int pid, MemoryAnalysisType memoryAnalysisType, string desc)
        {
            var pathDumpFile = DumperViewerMain.CreateNewFileName(ResultsFolder, desc);

            try
            {
                await DoForceGCAsync();

                var arglist = new List <string>()
                {
                    "-p", pid.ToString(),
                    "-f", "\"" + pathDumpFile + "\""
                };
                if (memoryAnalysisType.HasFlag(MemoryAnalysisType.StartClrObjExplorer))
                {
                    arglist.Add("-c");
                }
                var odumper = new DumperViewerMain(arglist.ToArray())
                {
                    _logger = Logger
                };
                await odumper.DoitAsync();
            }
            catch (Exception ex)
            {
                Logger.LogMessage(ex.ToString());
            }
            return(pathDumpFile);
        }
Пример #2
0
        public static void Main(string[] args)
        {
            var oDumper = new DumperViewerMain(args);

            oDumper.DoMain();
        }