Opened 12 years ago

Closed 12 years ago

#37 closed Fehler (fixed)

Windows - Fehlermeldung beim Beenden

Reported by: Melanie Hermann Owned by: Melanie Hermann
Priority: mittelfristig Milestone:
Component: Gesamtsystem Version: ALLE
Severity: Fehler Keywords:
Cc:

Description

Nachdem die Applikation gewechselt wurde, gibt es beim Beenden der Applikation eine Windows - Fehlermeldung.
Anwendungsfehler: Schwerwiegender Fehler in Andwendung gc.exe aufgetreten. Das Programm wird geschlossen.

TODO:
Prüfen woher Fehlermeldung kommt?
Ursache beseitigen.

Change History (1)

comment:1 by Melanie Hermann, 12 years ago

Resolution: fixed
Status: newclosed

DONE:

  • Fehler kommt aus der DSfG. Es werden Instanzen gelöscht, die aber noch verwendet werden. Deshalb kam es gelegentlich zu Fehlermeldungen beim Beenden des Programms.
  • Um das Problem zu beseitigen wurde folgendes geändert:
    Vorher:
    C_DSfGManager::~C_DSfGManager(void)
    {
      if (m_Mittelwerte)
      {
        DELETE_AND_NULL(m_Mittelwerte);
      }
    
      if (m_Dfue)
      {
        DELETE_AND_NULL(m_Dfue);
      }
      
      if (m_ThreadRunFlag)
        Stop_Thread();
    
      while (m_ThreadRunFlag) // volatile
         Sleep(0);
    
      ...
    

Nachher:

C_DSfGManager::~C_DSfGManager(void)
{
  if (m_ThreadRunFlag)
    Stop_Thread();

  while (m_ThreadRunFlag) // volatile
     Sleep(0);
	
  if (m_Mittelwerte)
  {
    DELETE_AND_NULL(m_Mittelwerte);
  }

  if (m_Dfue)
  {
    DELETE_AND_NULL(m_Dfue);
  }

  ...

Jetzt werden die Threads zuerst gestoppt, bevor die Instanzen gelöscht werden.

Note: See TracTickets for help on using tickets.