示例#1
0
        private DebugAssembly CreateDebugAssembly(Assembly assembly)
        {
            var debugAssembly = new DebugAssembly(++currentDebugAssemblyIndex);

            loadedAssemblies.Add(debugAssembly, assembly);
            return(debugAssembly);
        }
示例#2
0
        /// <inheritdoc/>
        public bool AssemblyUnload(DebugAssembly debugAssembly)
        {
            // Unload assembly in assemblyContainer
            lock (loadedAssemblies)
            {
                Assembly assembly;
                if (!loadedAssemblies.TryGetValue(debugAssembly, out assembly))
                {
                    return(false);
                }

                assemblyContainer.UnloadAssembly(assembly);
                loadedAssemblies.Remove(debugAssembly);
                AssemblyOnUnload(assembly);
            }
            return(true);
        }