ActiveTest.cpp
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:1k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #include "stdafx.h"
  2. #include "ActiveTest.h"
  3. // Spawn a thread to a test
  4. void ActiveTest::run (TestResult *result)
  5. {
  6.     CWinThread *thread;
  7.     
  8.     setTestResult (result);
  9.     m_runCompleted.ResetEvent ();
  10.     thread = AfxBeginThread (threadFunction, 
  11.         this, 
  12.         THREAD_PRIORITY_NORMAL, 
  13.         0, 
  14.         CREATE_SUSPENDED);
  15.     
  16.     DuplicateHandle (GetCurrentProcess (), 
  17.         thread->m_hThread,
  18.         GetCurrentProcess (), 
  19.         &m_threadHandle, 
  20.         0, 
  21.         FALSE, 
  22.         DUPLICATE_SAME_ACCESS);
  23.     thread->ResumeThread ();
  24. }
  25. // Simple execution thread.  Assuming that an ActiveTest instance
  26. // only creates one of these at a time.
  27. UINT ActiveTest::threadFunction (LPVOID thisInstance)
  28. {
  29.     ActiveTest *test = (ActiveTest *)thisInstance;
  30.     test->run ();
  31.     test->m_runCompleted.SetEvent ();
  32.     return 0;
  33. }