Disabling EurekaLog means that EurekaLog will be inactive; in other words: hooks will call default implementations (from RTL/VCL). Your application will behave like EurekaLog was not installed. By default, EurekaLog is enabled on startup for main thread only. You can enable EurekaLog for background threads.
Disable EurekaLog at run-timeCall SetEurekaLogState(False); to disable EurekaLog for the entire application. Or call SetEurekaLogStateInThread(0, False); to disable EurekaLog in current thread only.
Both functions are from the EBase unit.
You can also call the to disable memory leaks only.
This function is from the EMemLeaks unit.
Enable EurekaLog at run-timeCall SetEurekaLogState(True); to enable EurekaLog for the entire application (which is a default). Or call SetEurekaLogStateInThread(0, True); to enable EurekaLog in current thread only (default for main thread only).
Both functions are from the EBase unit.
You can also call the to enable memory leaks back after disabling.
This function is from the EMemLeaks unit.
Note: EurekaLog is considered to be active (in other words: will do its work) only if all of the following are true:
Therefore, if you want 100% guarantee that EurekaLog will be enabled - you need to call both SetEurekaLogState(True); and SetEurekaLogStateInThread(0, True); However, on practice: you will be more likely to call just one function - the opposite of what you have called earlier. For example, if you have called SetEurekaLogState(False); earlier - then you need to call just SetEurekaLogState(True);
Few examples:
SetEurekaLogStateInThread(0, False); SetEurekaLogStateInThread(0, True);
or:
function ThreadFunc(Parameter: Pointer): Integer; NameThread('This is my thread'); SetEurekaLogStateInThread(0, True); // ... your normal code for the thread ...
See also:
|