ProcessModule.ModuleMemorySize Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene la quantità di memoria necessaria per caricare il modulo.
public:
property int ModuleMemorySize { int get(); };
public int ModuleMemorySize { get; }
member this.ModuleMemorySize : int
Public ReadOnly Property ModuleMemorySize As Integer
Valore della proprietà
Dimensioni, in byte, della memoria occupata dal modulo.
Esempio
Nell'esempio di codice seguente viene creato un nuovo processo per l'applicazione Notepad.exe. Il codice esegue l'iterazione della classe ProcessModuleCollection per ottenere un oggetto ProcessModule per ogni modulo nella raccolta. Le proprietà ModuleName e ModuleMemorySize vengono usate per visualizzare il nome del modulo e la quantità di memoria necessaria per ogni modulo.
Process^ myProcess = gcnew Process;
// Get the process start information of notepad.
ProcessStartInfo^ myProcessStartInfo = gcnew ProcessStartInfo( "notepad.exe" );
// Assign 'StartInfo' of notepad to 'StartInfo' of 'myProcess' Object*.
myProcess->StartInfo = myProcessStartInfo;
// Create a notepad.
myProcess->Start();
System::Threading::Thread::Sleep( 1000 );
ProcessModule^ myProcessModule;
// Get all the modules associated with 'myProcess'.
ProcessModuleCollection^ myProcessModuleCollection = myProcess->Modules;
Console::WriteLine( "Module memory sizes of the modules associated with 'notepad' are:" );
// Display the 'ModuleMemorySize' of each of the modules.
for ( int i = 0; i < myProcessModuleCollection->Count; i++ )
{
myProcessModule = myProcessModuleCollection[ i ];
Console::WriteLine( "{0} : {1}", myProcessModule->ModuleName, myProcessModule->ModuleMemorySize );
}
myProcessModule = myProcess->MainModule;
// Display the 'ModuleMemorySize' of the main module.
Console::WriteLine( "The process's main module's ModuleMemorySize is: {0}", myProcessModule->ModuleMemorySize );
myProcess->CloseMainWindow();
using (Process myProcess = new Process())
{
// Get the process start information of notepad.
ProcessStartInfo myProcessStartInfo = new ProcessStartInfo("notepad.exe");
// Assign 'StartInfo' of notepad to 'StartInfo' of 'myProcess' object.
myProcess.StartInfo = myProcessStartInfo;
// Create a notepad.
myProcess.Start();
System.Threading.Thread.Sleep(1000);
ProcessModule myProcessModule;
// Get all the modules associated with 'myProcess'.
ProcessModuleCollection myProcessModuleCollection = myProcess.Modules;
Console.WriteLine("Module memory sizes of the modules associated "
+ "with 'notepad' are:");
// Display the 'ModuleMemorySize' of each of the modules.
for (int i = 0; i < myProcessModuleCollection.Count; i++)
{
myProcessModule = myProcessModuleCollection[i];
Console.WriteLine(myProcessModule.ModuleName + " : "
+ myProcessModule.ModuleMemorySize);
}
// Get the main module associated with 'myProcess'.
myProcessModule = myProcess.MainModule;
// Display the 'ModuleMemorySize' of the main module.
Console.WriteLine("The process's main module's ModuleMemorySize is: "
+ myProcessModule.ModuleMemorySize);
myProcess.CloseMainWindow();
}
Using myProcess As New Process()
' Get the process start information of notepad.
Dim myProcessStartInfo As New ProcessStartInfo("notepad.exe")
' Assign 'StartInfo' of notepad to 'StartInfo' of 'myProcess' object.
myProcess.StartInfo = myProcessStartInfo
' Create a notepad.
myProcess.Start()
System.Threading.Thread.Sleep(1000)
Dim myProcessModule As ProcessModule
' Get all the modules associated with 'myProcess'.
Dim myProcessModuleCollection As ProcessModuleCollection = myProcess.Modules
Console.WriteLine("Module memory sizes of the modules associated " +
"with 'notepad' are:")
' Display the 'ModuleMemorySize' of each of the modules.
Dim i As Integer
For i = 0 To myProcessModuleCollection.Count - 1
myProcessModule = myProcessModuleCollection(i)
Console.WriteLine(myProcessModule.ModuleName + " : " +
myProcessModule.ModuleMemorySize.ToString())
Next i
' Get the main module associated with 'myProcess'.
myProcessModule = myProcess.MainModule
' Display the 'ModuleMemorySize' of the main module.
Console.WriteLine("The process's main module's ModuleMemorySize is: " +
myProcessModule.ModuleMemorySize.ToString())
myProcess.CloseMainWindow()
End Using
Commenti
ModuleMemorySize non include alcuna allocazione di memoria aggiuntiva da parte del modulo una volta in esecuzione, ma include solo le dimensioni del codice statico e dei dati nel file del modulo.