MCPcopy Create free account
hub / github.com/python/cpython / _add_marker

Method _add_marker

Lib/profiling/sampling/gecko_collector.py:401–420  ·  view source on GitHub ↗

Add an interval marker for a specific thread.

(self, tid, name, start_time, end_time, category)

Source from the content-addressed store, hash-verified

399 return idx
400
401 def _add_marker(self, tid, name, start_time, end_time, category):
402 """Add an interval marker for a specific thread."""
403 if tid not in self.threads:
404 return
405
406 thread_data = self.threads[tid]
407 duration = end_time - start_time
408
409 name_idx = self._intern_string(name)
410 markers = thread_data["markers"]
411 markers["name"].append(name_idx)
412 markers["startTime"].append(start_time)
413 markers["endTime"].append(end_time)
414 markers["phase"].append(1) # 1 = interval marker
415 markers["category"].append(category)
416 markers["data"].append({
417 "type": name.replace(" ", ""),
418 "duration": duration,
419 "tid": tid
420 })
421
422 def _add_opcode_interval_marker(self, tid, opcode, lineno, col_offset, funcname, start_time, end_time):
423 """Add an interval marker for opcode execution span."""

Callers 3

collectMethod · 0.95
_finalize_markersMethod · 0.95

Calls 3

_intern_stringMethod · 0.95
appendMethod · 0.45
replaceMethod · 0.45

Tested by

no test coverage detected