https://github.com/python/cpython/commit/b4fac15613a16f9cd7b2ee32840523b399f4621f
commit: b4fac15613a16f9cd7b2ee32840523b399f4621f
branch: main
author: Thomas Kowalski <[email protected]>
committer: pablogsal <[email protected]>
date: 2026-03-31T09:57:07+01:00
summary:

gh-145458: use `self.skip_idle` consistently in the tachyon profiler (#145459)

files:
M Lib/profiling/sampling/stack_collector.py

diff --git a/Lib/profiling/sampling/stack_collector.py 
b/Lib/profiling/sampling/stack_collector.py
index 05ebe4d9764758..31102d3eb0ffa6 100644
--- a/Lib/profiling/sampling/stack_collector.py
+++ b/Lib/profiling/sampling/stack_collector.py
@@ -19,9 +19,9 @@ def __init__(self, sample_interval_usec, *, skip_idle=False):
         self.sample_interval_usec = sample_interval_usec
         self.skip_idle = skip_idle
 
-    def collect(self, stack_frames, timestamps_us=None, skip_idle=False):
+    def collect(self, stack_frames, timestamps_us=None):
         weight = len(timestamps_us) if timestamps_us else 1
-        for frames, thread_id in self._iter_stacks(stack_frames, 
skip_idle=skip_idle):
+        for frames, thread_id in self._iter_stacks(stack_frames, 
skip_idle=self.skip_idle):
             self.process_frames(frames, thread_id, weight=weight)
 
     def process_frames(self, frames, thread_id, weight=1):
@@ -88,7 +88,7 @@ def __init__(self, *args, **kwargs):
         # Per-thread statistics
         self.per_thread_stats = {}  # {thread_id: {has_gil, on_cpu, 
gil_requested, unknown, has_exception, total, gc_samples}}
 
-    def collect(self, stack_frames, timestamps_us=None, skip_idle=False):
+    def collect(self, stack_frames, timestamps_us=None):
         """Override to track thread status statistics before processing 
frames."""
         # Weight is number of timestamps (samples with identical stack)
         weight = len(timestamps_us) if timestamps_us else 1
@@ -123,7 +123,7 @@ def collect(self, stack_frames, timestamps_us=None, 
skip_idle=False):
                 self.per_thread_stats[thread_id][key] += value * weight
 
         # Call parent collect to process frames
-        super().collect(stack_frames, timestamps_us, skip_idle=skip_idle)
+        super().collect(stack_frames, timestamps_us)
 
     def set_stats(self, sample_interval_usec, duration_sec, sample_rate,
                   error_rate=None, missed_samples=None, mode=None):

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to