import lldb class OperatingSystemPlugIn(object): """Class that provides data for an instance of a LLDB 'OperatingSystemPython' plug-in class""" def __init__(self, process): '''Initialization needs a valid.SBProcess object. This plug-in will get created after a live process is valid and has stopped for the first time. ''' self.process = None self.registers = None self.threads = None if isinstance(process, lldb.SBProcess) and process.IsValid(): self.process = process self.threads = None # Will be an dictionary containing info for each thread def get_target(self): return self.process.target def get_thread_info(self): if not self.threads: self.threads = [{ 'tid': 0x1, 'name': 'one', 'queue': 'queue1', 'state': 'stopped', 'stop_reason': 'none' }, { 'tid': 0x2, 'name': 'two', 'queue': 'queue2', 'state': 'stopped', 'stop_reason': 'none' }, { 'tid': 0x3, 'name': 'three', 'queue': 'queue3', 'state': 'stopped', 'stop_reason': 'sigstop', 'core': 0 }] return self.threads