Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Runtime.Loader.AssemblyLoadContext Class Reference

Classes

struct  ContextualReflectionScope
 

Public Member Functions

void SetProfileOptimizationRoot (string directoryPath)
 
void StartProfileOptimization (string? profile)
 
 AssemblyLoadContext (string? name, bool isCollectible=false)
 
override string ToString ()
 
Assembly LoadFromAssemblyName (AssemblyName assemblyName)
 
Assembly LoadFromAssemblyPath (string assemblyPath)
 
Assembly LoadFromNativeImagePath (string nativeImagePath, string? assemblyPath)
 
Assembly LoadFromStream (Stream assembly)
 
Assembly LoadFromStream (Stream assembly, Stream? assemblySymbols)
 
void Unload ()
 
ContextualReflectionScope EnterContextualReflection ()
 

Static Public Member Functions

static ? AssemblyLoadContext GetLoadContext (Assembly assembly)
 
static AssemblyName GetAssemblyName (string assemblyPath)
 
static ContextualReflectionScope EnterContextualReflection (Assembly? activating)
 

Protected Member Functions

 AssemblyLoadContext ()
 
 AssemblyLoadContext (bool isCollectible)
 
 AssemblyLoadContext (bool representsTPALoadContext, bool isCollectible, string name)
 
virtual ? Assembly Load (AssemblyName assemblyName)
 
IntPtr LoadUnmanagedDllFromPath (string unmanagedDllPath)
 
virtual IntPtr LoadUnmanagedDll (string unmanagedDllName)
 

Package Functions

static void InternalSetProfileRoot (string directoryPath)
 
static void InternalStartProfile (string profile, IntPtr ptrNativeAssemblyLoadContext)
 
static Assembly[] GetLoadedAssemblies ()
 
static bool IsTracingEnabled ()
 
static bool TraceResolvingHandlerInvoked (string assemblyName, string handlerName, string alcName, string resultAssemblyName, string resultAssemblyPath)
 
static bool TraceAssemblyResolveHandlerInvoked (string assemblyName, string handlerName, string resultAssemblyName, string resultAssemblyPath)
 
static bool TraceAssemblyLoadFromResolveHandlerInvoked (string assemblyName, bool isTrackedAssembly, string requestingAssemblyPath, string requestedAssemblyPath)
 
static bool TraceSatelliteSubdirectoryPathProbed (string filePath, int hResult)
 
unsafe Assembly InternalLoad (ReadOnlySpan< byte > arrAssembly, ReadOnlySpan< byte > arrSymbols)
 
Assembly LoadFromInMemoryModule (IntPtr moduleHandle)
 
IntPtr GetResolvedUnmanagedDll (Assembly assembly, string unmanagedDllName)
 

Static Package Functions

static void OnProcessExit ()
 

Properties

static Dictionary< long, WeakReference< AssemblyLoadContext > > AllContexts [get]
 
IEnumerable< AssemblyAssemblies [get]
 
static AssemblyLoadContext Default [get]
 
bool IsCollectible [get]
 
stringName [get]
 
static IEnumerable< AssemblyLoadContextAll [get]
 
static ? AssemblyLoadContext CurrentContextualReflectionContext [get]
 
Func< Assembly, string, IntPtr >? ResolvingUnmanagedDll
 
Func< AssemblyLoadContext, AssemblyName, Assembly?>? Resolving
 
Action< AssemblyLoadContext >? Unloading
 

Events

Func< Assembly, string, IntPtr >? _resolvingUnmanagedDll
 
Func< AssemblyLoadContext, AssemblyName, Assembly >? _resolving
 
Action< AssemblyLoadContext >? _unloading
 
static ? AssemblyLoadEventHandler AssemblyLoad
 
static ? ResolveEventHandler TypeResolve
 
static ? ResolveEventHandler ResourceResolve
 
static ? ResolveEventHandler AssemblyResolve
 

Private Types

enum  InternalState { Alive , Unloading }
 

Private Member Functions

static IntPtr InitializeAssemblyLoadContext (IntPtr ptrAssemblyLoadContext, bool fRepresentsTPALoadContext, bool isCollectible)
 
static void PrepareForAssemblyLoadContextRelease (IntPtr ptrNativeAssemblyLoadContext, IntPtr ptrAssemblyLoadContextStrong)
 
static void LoadFromStream (IntPtr ptrNativeAssemblyLoadContext, IntPtr ptrAssemblyArray, int iAssemblyArrayLen, IntPtr ptrSymbols, int iSymbolArrayLen, ObjectHandleOnStack retAssembly)
 
static void LoadFromPath (IntPtr ptrNativeAssemblyLoadContext, string ilPath, string niPath, ObjectHandleOnStack retAssembly)
 
Assembly InternalLoadFromPath (string assemblyPath, string nativeImagePath)
 
static IntPtr LoadFromInMemoryModuleInternal (IntPtr ptrNativeAssemblyLoadContext, IntPtr hModule, ObjectHandleOnStack retAssembly)
 
static IntPtr GetLoadContextForAssembly (QCallAssembly assembly)
 
 ~AssemblyLoadContext ()
 
void RaiseUnloadEvent ()
 
void InitiateUnload ()
 
void VerifyIsAlive ()
 
Assembly GetFirstResolvedAssemblyFromResolvingEvent (AssemblyName assemblyName)
 
Assembly ResolveUsingLoad (AssemblyName assemblyName)
 
Assembly ResolveUsingEvent (AssemblyName assemblyName)
 
Assembly ResolveSatelliteAssembly (AssemblyName assemblyName)
 

Static Private Member Functions

static Assembly ResolveSatelliteAssembly (IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)
 
static IntPtr ResolveUnmanagedDll (string unmanagedDllName, IntPtr gchManagedAssemblyLoadContext)
 
static IntPtr ResolveUnmanagedDllUsingEvent (string unmanagedDllName, Assembly assembly, IntPtr gchManagedAssemblyLoadContext)
 
static Assembly ResolveUsingResolvingEvent (IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)
 
static RuntimeAssembly GetRuntimeAssembly (Assembly asm)
 
static void StartAssemblyLoad (ref Guid activityId, ref Guid relatedActivityId)
 
static void StopAssemblyLoad (ref Guid activityId)
 
static void InitializeDefaultContext ()
 
static void SetCurrentContextualReflectionContext (AssemblyLoadContext value)
 
static Assembly Resolve (IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName)
 
static Assembly ValidateAssemblyNameWithSimpleName (Assembly assembly, string requestedSimpleName)
 
static void OnAssemblyLoad (RuntimeAssembly assembly)
 
static RuntimeAssembly OnResourceResolve (RuntimeAssembly assembly, string resourceName)
 
static RuntimeAssembly OnTypeResolve (RuntimeAssembly assembly, string typeName)
 
static RuntimeAssembly OnAssemblyResolve (RuntimeAssembly assembly, string assemblyFullName)
 
static RuntimeAssembly InvokeResolveEvent (ResolveEventHandler eventHandler, RuntimeAssembly assembly, string name)
 

Private Attributes

readonly IntPtr _nativeAssemblyLoadContext
 
readonly object _unloadLock
 
readonly string _name
 
readonly long _id
 
InternalState _state
 
readonly bool _isCollectible
 

Static Private Attributes

const string AssemblyLoadName = "AssemblyLoad"
 
static volatile Dictionary< long, WeakReference< AssemblyLoadContext > > s_allContexts
 
static long s_nextId
 
static AsyncLocal< AssemblyLoadContexts_asyncLocalCurrent
 

Detailed Description

Definition at line 14 of file AssemblyLoadContext.cs.


The documentation for this class was generated from the following file: