IDebugEngineProgram2::WatchForExpressionEvaluationOnThread

Applies to: yesVisual Studio noVisual Studio for Mac

Note

This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

Allows (or disallows) expression evaluation to occur on the given thread, even if the program has stopped.

Syntax

HRESULT WatchForExpressionEvaluationOnThread( 
   IDebugProgram2*       pOriginatingProgram,
   DWORD                 dwTid,
   DWORD                 dwEvalFlags,
   IDebugEventCallback2* pExprCallback,
   BOOL                  fWatch
);
int WatchForExpressionEvaluationOnThread( 
   IDebugProgram2       pOriginatingProgram,
   uint                  dwTid,
   uint                  dwEvalFlags,
   IDebugEventCallback2 pExprCallback,
   int                   fWatch
);

Parameters

pOriginatingProgram
[in] An IDebugProgram2 object representing the program that is evaluating an expression.

dwTid
[in] Specifies the identifier of the thread.

dwEvalFlags
[in] A combination of flags from the EVALFLAGS enumeration that specify how the evaluation is to be performed.

pExprCallback
[in] An IDebugEventCallback2 object to be used to send debug events that occur during expression evaluation.

fWatch
[in] If non-zero (TRUE), allows expression evaluation on the thread identified by dwTid; otherwise, zero (FALSE) disallows expression evaluation on that thread.

Return Value

If successful, returns S_OK; otherwise, returns an error code.

Remarks

When the session debug manager (SDM) asks a program, identified by the pOriginatingProgram parameter, to evaluate an expression, it notifies all other attached programs by calling this method.

Expression evaluation in one program may cause code to run in another, due to function evaluation or evaluation of any IDispatch properties. Because of this, this method allows expression evaluation to run and complete even though the thread may be stopped in this program.

See also