Program nie odpowiada po zminimalizowaniu

0

Mam następujący problem: aplikacja windows form, zrobiłem release. Po kliknięciu buttona wykonywana jest metoda z wieloma obliczeniami (obliczenia trwają kilka-kilkanaście minut). Formatka podczas obliczeń jest nieaktywna, odświeżany jest tylko progressbar. Wszystko działa dobrze do chwili, aż mój program przestanie być programem aktualnie aktywnym (włączę inny program/kliknę na pulpit/użyję alt+tab czy cokolwiek innego) - wtedy obliczenia się wieszają i "program nie odpowiada". Jeśli po kliknięciu buttona nic nie ruszam, jest ok. Krótko mówiąc, program nie potrafi pracować "w tle". W trybie debug oczywiście wszystko ładnie działa i nie ma żadnych problemów.

Czy ktoś może wie, gdzie mogłem zrobić coś nie tak i z czego wynika ten błąd? Nie użyłem wątków, program napisany jest w prosty sposób. W miarę możliwości prosiłbym o łatwe i szybkie do zaimplementowania poprawki, bo czas mnie goni, a dziesiątki wykresów same się nie wygenerują :(

Z góry dziękuję za każdą pomoc ;)

1

Podejrzewam, że aplikacja działa nadal tylko GUI się zawiesza bo wszystko robisz w wątku głównym. Wykonuj operacje w osobnym wątku i nie będzie problemu.

0

Dzięki wielkie! To rzeczywiście tylko GUI, a program wszystko ładnie liczy i zapisuje do plików :) Zupełnie mi to nie przeszkadza, więc w na razie pozbieram statystyki w ten sposób, a dodaniem wątku zajmę się później. Jeszcze raz dzięki.

0

To można zrobić bez wątków, wystarczy okresowo odpalać w pętli obliczeniowej Application.DoEvents (dla WinForms)

2

pewnie, nawet wysrać się można do zlewu tylko czy jest to normalne?

1 użytkowników online, w tym zalogowanych: 0, gości: 1