Ejemplo n.º 1
0
const CDebugSystemObjects::CThread CDebugSystemObjects::GetThreadBySystemId(ULONG systemId) const
{
  ULONG engineId;

  Check(m_intf->GetThreadIdBySystemId(systemId, &engineId));

  return CThread(this, engineId, systemId);
}
Ejemplo n.º 2
0
const CDebugSystemObjects::CThread CDebugSystemObjects::GetThreadByEngineId(ULONG engineId) const
{
  ULONG number = 0;

  Check(m_intf->GetNumberThreads(&number));

  std::vector<ULONG> engIds(number), sysIds(number);

  Check(m_intf->GetThreadIdsByIndex(0, number, &engIds[0], &sysIds[0]));

  for (ULONG i=0; i<number; i++)  
    if (engIds[i] == engineId)
      return CThread(this, engIds[i], sysIds[i]);
  
  RaiseException("The thread engine id is not exists.", PyExc_IndexError);
}
Ejemplo n.º 3
0
const list CDebugSystemObjects::GetThreads(void) const
{
  ULONG number = 0;

  Check(m_intf->GetNumberThreads(&number));

  std::vector<ULONG> engIds(number), sysIds(number);

  Check(m_intf->GetThreadIdsByIndex(0, number, &engIds[0], &sysIds[0]));

  list threads;

  for (ULONG i=0; i<number; i++)
  {
    threads.append(CThread(this, engIds[i], sysIds[i]));
  }

  return threads;
}
/*==========================================================================*/
MODULE::IMPORT/*============================================================*/
/*==========================================================================*/

#include "../main.c"

/*==========================================================================*/
MODULE::INTERFACE/*=========================================================*/
/*==========================================================================*/

/*==========================================================================*/
MODULE::IMPLEMENTATION/*====================================================*/
/*==========================================================================*/

#define NO_GTK FALSE

#include "../../syncobject.c"
#include <gtk/gtk.h>

#if !FRAMEWORK_NOMAIN && OS_Linux
Local gint CFramework__LINUX_timeout(gpointer data) {
   CThread(CFramework(&framework).thread_this()).sleep(0);

   return TRUE;
}/*CFramework__LINUX_timeout*/
Ejemplo n.º 5
0
CThread
CThread::getCurrentThread()
{
	return CThread(ARCH->newCurrentThread());
}