Ik heb een applicatie, met een MDI, en een aantal MDI-childs.
in een van die MDI-childs wordt een taak gestart, die maar blijft lopen, totdat die wordt gestopt.
Als ik dat handmatig doe, is er niks aan de hand. Events worden gestuurd, en de taak wordt afgehandeld.
Als ik het programma afsluit, blijft het proces hangen, omdat de taak niet goed wordt gestopt.
Nu dacht ik:
ik gebruik het FormClosing event om de taak te stoppen. Maar dit geeft het volgende probleem:
als ik het sluiten cancel, dan sluit de taak goed af, maar sluit het programma natuurlijk niet.
Als ik het sluiten niet cancel, dan lijkt het of de windows Message Queue die events niet meer verstuurt, waardoor ze niet meer bij mijn taak terechtkomen, en dus niet afsluit, met als gevolg: een proces dat blijft hangen.
edit: ik programmeer in C#, .Net 2.0
Kan iemand mij misschien met een oplossing helpen?
Ik heb al geprobeerd om een while-loop in die FormClosing task te zetten, maar dat lukt niet, omdat de events die ik dan afschiet, op een of andere manier niet aankomen.
in een van die MDI-childs wordt een taak gestart, die maar blijft lopen, totdat die wordt gestopt.
Als ik dat handmatig doe, is er niks aan de hand. Events worden gestuurd, en de taak wordt afgehandeld.
Als ik het programma afsluit, blijft het proces hangen, omdat de taak niet goed wordt gestopt.
Nu dacht ik:
ik gebruik het FormClosing event om de taak te stoppen. Maar dit geeft het volgende probleem:
als ik het sluiten cancel, dan sluit de taak goed af, maar sluit het programma natuurlijk niet.
Als ik het sluiten niet cancel, dan lijkt het of de windows Message Queue die events niet meer verstuurt, waardoor ze niet meer bij mijn taak terechtkomen, en dus niet afsluit, met als gevolg: een proces dat blijft hangen.
edit: ik programmeer in C#, .Net 2.0
Kan iemand mij misschien met een oplossing helpen?
Ik heb al geprobeerd om een while-loop in die FormClosing task te zetten, maar dat lukt niet, omdat de events die ik dan afschiet, op een of andere manier niet aankomen.
Memories of yesterday, will grow, but never die