Controls the set of processes that are profiled.
hcl
set-process-profiling flag processes
flag⇩ | :add , :remove or :set . |
processes⇩ |
One of :current , :all , :new , a mp:process object, or a list of mp:process objects which may also contain :current or :new . |
The function set-process-profiling
modifies the set of processes for which profiling information is (or will be) collected.
If set-process-profiling
is called while profiling (that is after a call to start-profiling and before the next call to stop-profiling with print non-nil) the system immediately starts collecting profile information for the new set of processes.
When start-profiling is called without passing processes, it sets the processes to profile according to the last call to set-process-profiling
.
flag determines how the set of processes to profile is modified:
:add |
The given processes are added to the set. |
:remove |
The given processes are removed from the set. |
:set |
The given processes are used as the set. |
processes controls which processes are added to the set, removed from the set or are contained in the set, as follows:
:current |
Means the current process. When start-profiling is called it interprets :current to mean the current process at the time it is called. If set-process-profiling is called while profiling, :current is interpreted as the current process when set-process-profiling is called. |
:all |
Means all processes, including those which are created after profiling started. |
:new |
All processes created after the call to start-profiling, unless set-process-profiling is called while profiling, in which case it is any process created after this call. |
A mp:process object |
Means that process itself. |
A list |
Means the processes in that list. The list can contain the symbols :current or :new , which are interpreted as described above. |
set-process-profiling
can be called whether or not the profiler is collecting information. See start-profiling and stop-profiling.
Note: This function only works on platforms in SMP LispWorks ; in non-SMP LispWorks, all processes are profiled.
Add process1 to the set:
(set-process-profiling :add process1)
Turn off profiling for the current process:
(set-process-profiling :remove :current)
Turn off all profiling:
(set-process-profiling :remove :all)
Set all processes for later profiling:
(set-process-profiling :set :all)
LispWorks® User Guide and Reference Manual - 01 Dec 2021 19:30:35