방법: 프로세스의 스레드 사용 조사
업데이트: 2007년 11월
Process 구성 요소의 Threads 속성 값을 읽으면 프로세스 스레드를 볼 수 있습니다. 반환 값은 현재 프로세스에서 실행되고 있는 운영 체제 스레드를 나타내는 ProcessThread 개체의 컬렉션이 포함된 ProcessThreadCollection 형식입니다. 그런 다음 컬렉션 전체를 반복하여 개별 스레드 속성을 볼 수 있습니다. 기본 스레드가 반드시 컬렉션의 인덱스 0에 있는 스레드일 필요는 없습니다.
프로세스의 스레드 사용을 조사하려면
Process 구성 요소에 의해 프로세스가 시작되지 않은 경우 Process 구성 요소를 원하는 프로세스에 연결합니다. 자세한 내용은 방법: 기존 프로세스에 바인딩을 참조하십시오.
ProcessThread 형식의 빈 컬렉션 변수에 프로세스의 Threads 속성 값을 할당합니다.
단일 스레드에 대한 속성을 보려면 배열 인덱스를 검색합니다.
다음 예제에서는 메모장의 Threads 속성을 읽고 빈 배열에 값을 할당하는 방법을 보여 줍니다. ProcessThread 배열에 있는 첫 번째 스레드의 BasePriority 값을 읽어 TextBox1이라는 텍스트 상자에 표시합니다.
Dim myCollection As ProcessThreadCollection Dim myProcesses() As Process ' Create an instance of the Process Component and associate ' it to the target process. myProcesses = Process.GetProcessesByName("Notepad.exe") ' Read the Process.Threads property and assign it to the empty array. myCollection = myProcesses(0).Threads ' Read desired ProcessThread property. Me.Textbox1.Text = myCollection(0).BasePriority.ToString()
ProcessThreadCollection threads; Process[] notepads; // Retrieve the Notepad processes. notepads = Process.GetProcessesByName("Notepad"); // Read the Process.Threads property. threads = notepads[0].Threads; // Read desired ProcessThread property. TextBox1.Text = threads[0].BasePriority.ToString();