📄 perfservice.h
字号:
// PerfService.h
//
// This is a part of the Active Template Library.
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// This source code is only intended as a supplement to the
// Active Template Library Reference and related
// electronic documentation provided with the library.
// See these sources for detailed information regarding the
// Active Template Library product.
#pragma once
__interface ATL_NO_VTABLE __declspec(uuid("2DC4AE64-BCD6-401A-9212-3A7EAF536F89"))
IFibonacciPerfService : public IUnknown
{
HRESULT STDMETHODCALLTYPE QueryInterface(REFIID riid, void **ppv);
ULONG STDMETHODCALLTYPE AddRef();
ULONG STDMETHODCALLTYPE Release();
HRESULT GetFibonacciPerf(CFibonacciPerf** ppPerfMon);
};
CFibonacciPerf g_perf;
class CFibonacciPerfService :
public CComObjectRootEx<CComMultiThreadModel>,
public IFibonacciPerfService
{
public:
BEGIN_COM_MAP(CFibonacciPerfService)
COM_INTERFACE_ENTRY(IFibonacciPerfService)
END_COM_MAP()
CFibonacciPerfService()
{
}
DECLARE_PROTECT_FINAL_CONSTRUCT()
HRESULT FinalConstruct()
{
HRESULT hr;
CComPtr<IDispatch> spPerfCache;
hr = spPerfCache.CoCreateInstance(__uuidof(CPerfCache));
if (FAILED(hr))
return E_FAIL;
hr = g_perf.Initialize();
if (FAILED(hr))
return E_FAIL;
g_perf.SetPerfCache(spPerfCache);
return S_OK;
}
void FinalRelease()
{
}
HRESULT GetFibonacciPerf(CFibonacciPerf** ppPerfMon)
{
*ppPerfMon = &g_perf;
return S_OK;
}
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -