Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*++
Copyright (C) 1998-2001 Microsoft Corporation
Module Name:
Abstract:
History:
--*/
//////////////////////////////////////////////////////////////////////
//
// StressOps.h
//
//////////////////////////////////////////////////////////////////////
#ifndef _STRESSOPS_H_
#define _STRESSOPS_H_
class CBasicRefreshAgent { public: CRefresher *m_pRef; // The refresher to stress
DWORD m_dwIterations; // Total number of cycles
DWORD m_dwPeriod; // Wait between cycles
HANDLE m_hThread; // Stress thread
HANDLE m_hRefreshEvent; BOOL m_bInfinite;
static DWORD WINAPI StressThreadEntry(LPVOID lpParameter); virtual void StressLoop();
public: CBasicRefreshAgent(); virtual ~CBasicRefreshAgent();
BOOL Create(CRefresher *pRef, DWORD dwIterations, DWORD dwPeriod, HANDLE hRefreshEvent); void BeginStress(); };
#define MAX_INST 100
#define MIN_INST 50
class CRandomOpRefreshAgent : public CBasicRefreshAgent { HANDLE m_hThreadAddRefs; HANDLE m_hThreadRemoveRefs;
virtual void StressLoop();
static DWORD WINAPI AddRefThreadEntry(LPVOID lpParameter); static DWORD WINAPI RemRefThreadEntry(LPVOID lpParameter);
public: BOOL Create(CRefresher *pRef, DWORD dwPeriod); void BeginStress(); };
#endif // _STRESSOPS_H_
|