DbgLockTrace 函数
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
启用或禁用给定关键节的调试日志记录。
语法
void WINAPI DbgLockTrace(
CCritSec *pcCrit,
BOOL fTrace
);
参数
-
pcCrit
-
指向 CCritSec 关键部分的指针。
-
fTrace
-
指定是否启用日志记录的值。 使用 TRUE 启用日志记录,使用 FALSE 禁用日志记录。
返回值
此函数不返回值。
注解
使用此函数跟踪特定的关键部分。 默认情况下,由于大量关键部分,将禁用关键节的调试日志记录。
若要跟踪关键部分,请执行以下步骤:
- 在包含 DirectShow 标头之前定义 DEBUG 或_DEBUG。
- 使用 LOG_LOCKING 标志调用 DbgSetModuleLevel ,为关键部分启用调试日志记录。
- 在要跟踪的关键节上调用 DbgLockTrace 。
在零售版本中, DbgLockTrace 函数不起作用。
示例
下面的代码示例演示如何跟踪关键部分。
DbgInitialise(g_hInst);
DbgSetModuleLevel(LOG_LOCKING, 3);
{
CCritSec MyLock;
DbgLockTrace(&MyLock, TRUE);
CAutoLock cObjectLock(&MyLock);
// Protected section of code.
DbgOutString("This code is inside a critical section.\n");
} // Lock goes out of scope here.
DbgTerminate();
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|