EmptyWorkingSet Win32 API를 사용하는 C# 예제
그냥... 아래의 질문에 대한 답으로 작성한 간단한 예제입니다.
[c#] EmptyWorkingSet 사용 중 에러
; http://social.msdn.microsoft.com/Forums/ko-KR/6dff23f4-ece9-43a4-8f6b-3528cca5b4c4/c-emptyworkingset-?forum=dotnetko
참고로, 아래의 코드는 자신의 프로세스에 대한 메모리를 조정하는 것이므로 관리자 권한으로 승격된 프로세스가 아니어도 잘 동작합니다.
using System;
using System.Diagnostics;
using System.Runtime.InteropServices;
namespace ConsoleApplication1
{
class Program
{
[DllImport("psapi.dll")]
public static extern int EmptyWorkingSet(IntPtr hProcess);
static void Main(string[] args)
{
IntPtr processHandle = Process.GetCurrentProcess().Handle;
Console.WriteLine("WorkingSet Mem Size: " + Process.GetCurrentProcess().WorkingSet64);
Console.ReadLine();
int result = EmptyWorkingSet(processHandle);
Console.WriteLine("Result: " + ((result != 0) ? "Success" : "Failed"));
Console.WriteLine("WorkingSet Mem Size: " + Process.GetCurrentProcess().WorkingSet64);
}
}
}
예제 코드는 첨부 파일로 넣어두었습니다.
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]